Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1032 Lrz 1
//BOX_LIB
2
dword edit_box_draw = #aEdit_box_draw;
3
dword edit_box_key  = #aEdit_box_key;
4
dword edit_box_mouse = #aEdit_box_mouse;
5
dword version_ed     = #aVersion_ed;
6
 
7
//dword
8
//dword
9
//dword
10
 
11
//dword
12
//dword
13
//dword
14
 
15
//$edit_box_draw   dword      aEdit_box_draw
16
//$edit_box_key    dword      aEdit_box_key
17
//$edit_box_mouse  dword      aEdit_box_mouse
18
//$version_ed      dword      aVersion_ed
19
 
20
//$check_box_draw  dword      aCheck_box_draw
21
//$check_box_mouse dword      aCheck_box_mouse
22
//$version_ch      dword      aVersion_ch
23
 
24
//$option_box_draw  dword      aOption_box_draw
25
//$option_box_mouse dword      aOption_box_mouse
26
//$version_op       dword      aVersion_op
27
 
28
dword  am__ = 0x0;
29
dword  bm__ = 0x0;
30
 
31
char aEdit_box_draw[9]  = "edit_box\0";
32
char aEdit_box_key[13] = "edit_box_key\0";
33
char aEdit_box_mouse[15] = "edit_box_mouse\0";
34
char aVersion_ed[11] = "version_ed\0";
35
 
36
char aCheck_box_draw  [15] = "check_box_draw\0";
37
char aCheck_box_mouse [16] = "check_box_mouse\0";
38
char aVersion_ch      [11] = "version_ch\0";
39
 
40
char aOption_box_draw [16] = "option_box_draw\0";
41
char aOption_box_mouse[17] = "option_box_mouse\0";
42
char aVersion_op      [11] = "version_op\0" ;
43
 
44
 
45
struct edit_box{
46
dword width, left, top, color, shift_color, focus_border_color, blur_border_color,
47
text_color, max, text, flags, size, pos, offset, cl_curs_x, cl_curs_y, shift, shift_old;
48
};
49
 
50
//void Edit_box_draw(dword edit_b)
51
//{
52
 
53
//        $ PUSH    dword edit_b
54
//        $ CALL    dword [edit_box_draw]
55
//}
56
 
57
//struct load_dll{
58
// dword way_of_ini, myimport;
59
// void get();
60
//};
61
 
62
int load_dll(EAX)
63
{
64
//set mask
65
        $mov    eax,40
66
        $mov    ebx,0x27
67
        $int    0x40
68
// load DLL
69
        $mov     eax, 68
70
        $mov     ebx, 19
71
        ECX=#way_of_ini;
72
        $int     0x40
73
        $test    eax, eax
74
        $jz      exit
75
 
76
// initialize import
77
        $mov     edx,eax
78
        ESI=#edit_box_draw;
79
import_loop:
80
        $lodsd
81
        $test    eax,eax
82
        $jz      import_done
83
        $push    edx
84
import_find:
85
        $mov     ebx,DSDWORD[EDX]
86
        $test    ebx, ebx
87
        $jz      exit
88
        $push    eax
89
nex1:
90
        $mov     cl,DSBYTE[EAX];
91
        $cmp     cl,DSBYTE[EBX];
92
        $jnz     import_find_next
93
        $test    cl,cl
94
        $jz      import_found
95
        $inc     eax
96
        $inc     ebx
97
        $jmp     nex1
98
import_find_next:
99
        $pop     eax
100
        $add     edx, 8
101
        $jmp     import_find
102
import_found:
103
        $pop     eax
104
        $mov     eax,DSDWORD[edx+4]
105
        $mov     DSDWORD[esi-4],eax
106
        $pop     edx
107
        $jmp     import_loop
108
import_done:
109
        return 0;
110
exit:
111
        return -1;
112
}