Rev 4492 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4492 | Rev 4493 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | int x,y,w,h; |
3 | int x,y,w,h; |
4 | }; |
4 | }; |
Line 5... | Line 5... | ||
5 | 5 | ||
6 | struct LinksArray |
6 | struct LinksArray |
7 | { |
7 | { |
8 | array_link links[100]; |
8 | array_link links[200]; |
9 | char page_links[12000]; |
9 | char page_links[64000]; |
10 | dword buflen; |
10 | dword buflen; |
Line 11... | Line 11... | ||
11 | int count, active; |
11 | int count, active; |
12 | 12 | ||
Line 44... | Line 44... | ||
44 | return links[id].link; |
44 | return links[id].link; |
45 | } |
45 | } |
Line 46... | Line 46... | ||
46 | 46 | ||
47 | void LinksArray::Clear() |
47 | void LinksArray::Clear() |
- | 48 | { |
|
- | 49 | int i; |
|
48 | { |
50 | for (i=0; i<=count; i++) DeleteButton(i+400); |
49 | buflen = #page_links; |
51 | buflen = #page_links; |
50 | count = 0; |
52 | count = 0; |
51 | active = -1; |
53 | active = -1; |
Line 72... | Line 74... | ||
72 | } |
74 | } |
73 | } |
75 | } |
Line 74... | Line 76... | ||
74 | 76 | ||
75 | 77 | ||
- | 78 | LinksArray PageLinks; |
|
- | 79 | ||
- | 80 | ||
- | 81 | /* |
|
- | 82 | ------------------ Подфункция 4 - загрузить курсор ------------------- |
|
- | 83 | Параметры: |
|
- | 84 | * eax = 37 - номер функции |
|
- | 85 | * ebx = 4 - номер подфункции |
|
- | 86 | * dx = источник данных: |
|
- | 87 | * dx = LOAD_FROM_FILE = 0 - данные в файле |
|
- | 88 | * ecx = указатель на полный путь к файлу курсора |
|
- | 89 | * файл курсора должен быть в формате .cur, стандартном для |
|
- | 90 | MS Windows, причём размером 32*32 пикселя |
|
- | 91 | * dx = LOAD_FROM_MEM = 1 - данные файла уже загружены в память |
|
- | 92 | * ecx = указатель на данные файла курсора |
|
- | 93 | * формат данных такой же, как и в предыдущем случае |
|
- | 94 | * dx = LOAD_INDIRECT = 2 - данные в памяти |
|
- | 95 | * ecx = указатель на образ курсора в формате ARGB 32*32 пикселя |
|
- | 96 | * edx = 0xXXYY0002, где |
|
- | 97 | * XX = x-координата "горячей точки" курсора |
|
- | 98 | * YY = y-координата |
|
- | 99 | * 0 <= XX, YY <= 31 |
|
- | 100 | Возвращаемое значение: |
|
- | 101 | * eax = 0 - неудача |
|
- | 102 | * иначе eax = хэндл курсора |
|
- | 103 | ||
- | 104 | ------------------ Подфункция 5 - установить курсор ------------------ |
|
- | 105 | Устанавливает новый курсор для окна текущего потока. |
|
- | 106 | Параметры: |
|
- | 107 | * eax = 37 - номер функции |
|
- | 108 | * ebx = 5 - номер подфункции |
|
- | 109 | * ecx = хэндл курсора |
|
- | 110 | Возвращаемое значение: |
|
- | 111 | * eax = хэндл предыдущего установленного курсора |
|
- | 112 | Замечания: |
|
- | 113 | * Если передан некорректный хэндл, то функция восстановит курсор |
|
- | 114 | по умолчанию (стандартную стрелку). В частности, к восстановлению |
|
- | 115 | курсора по умолчанию приводит передача ecx=0. |
|
- | 116 | ||
- | 117 | ------------------- Подфункция 6 - удалить курсор -------------------- |
|
- | 118 | Параметры: |
|
- | 119 | * eax = 37 - номер функции |
|
- | 120 | * ebx = 6 - номер подфункции |
|
- | 121 | * ecx = хэндл курсора |
|
- | 122 | Возвращаемое значение: |
|
- | 123 | * eax разрушается |
|
- | 124 | Замечания: |
|
- | 125 | * Курсор должен был быть ранее загружен текущим потоком |
|
- | 126 | (вызовом подфункции 4). Функция не удаляет системные курсоры и |
|
- | 127 | курсоры, загруженные другими приложениями. |
|
- | 128 | * Если удаляется активный (установленный подфункцией 5) курсор, то |
|
- | 129 | восстанавливается курсор по умолчанию (стандартная стрелка). |
|
- | 130 | ||
76 | LinksArray PageLinks; |
131 | */=>=> |