Changeset 551 for trunk/dll/key.c
- Timestamp:
- Feb 28, 2007, 2:33:51 AM (19 years ago)
- File:
-
- 1 edited
-
trunk/dll/key.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/key.c
r119 r551 32 32 #pragma alloc_text(ABOUT,AboutDlgProc,AuthorDlgProc) 33 33 34 MRESULT EXPENTRY AuthorDlgProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2)34 MRESULT EXPENTRY AuthorDlgProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2) 35 35 { 36 return WinDefDlgProc(hwnd, msg,mp1,mp2);36 return WinDefDlgProc(hwnd, msg, mp1, mp2); 37 37 } 38 38 39 MRESULT EXPENTRY AboutDlgProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2)39 MRESULT EXPENTRY AboutDlgProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2) 40 40 { 41 SWP swp;42 static HAB hab = 0;43 BOOL no = FALSE;41 SWP swp; 42 static HAB hab = 0; 43 BOOL no = FALSE; 44 44 static BOOL pause = FALSE; 45 static INT width,direction,ticktock,counter = 0; 46 static HPOINTER stick1,stick2,stick3,stick4,stick12,stick22,stick32,stick42, 47 stick5,stick52; 48 49 switch(msg) { 50 case WM_INITDLG: 51 if(hab) { 52 WinDismissDlg(hwnd,0); 53 break; 45 static INT width, direction, ticktock, counter = 0; 46 static HPOINTER stick1, stick2, stick3, stick4, stick12, stick22, stick32, 47 stick42, stick5, stick52; 48 49 switch (msg) { 50 case WM_INITDLG: 51 if (hab) { 52 WinDismissDlg(hwnd, 0); 53 break; 54 } 55 if (mp2) 56 pause = TRUE; 57 else 58 pause = FALSE; 59 AboutBox = hwnd; 60 hab = WinQueryAnchorBlock(hwnd); 61 WinQueryWindowPos(hwnd, &swp); 62 width = swp.cx; 63 { 64 CHAR s[81]; 65 66 sprintf(s, 67 "%s %d.%02d%s", 68 GetPString(IDS_VERSIONTEXT), VERMAJOR, VERMINOR, VERREALMINOR); 69 WinSetDlgItemText(hwnd, ABT_VERSION, s); 70 } 71 if (!strcmp(realappname, "FM/4")) 72 WinSetDlgItemText(hwnd, ABT_PROGNAME, GetPString(IDS_FM2LITETEXT)); 73 if (!pause) { 74 stick1 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK1); 75 stick2 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK2); 76 stick3 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK3); 77 stick4 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK4); 78 stick5 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK5); 79 stick12 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK12); 80 stick22 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK22); 81 stick32 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK32); 82 stick42 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK42); 83 stick52 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, ID_STICK52); 84 direction = 2; 85 ticktock = 0; 86 WinStartTimer(hab, hwnd, ID_TIMER, 164); 87 PostMsg(hwnd, UM_SETUP, MPVOID, MPVOID); 88 } 89 break; 90 91 case UM_SETUP: 92 if (counter++ > 1) { 93 94 HPOINTER hbm, sk0, sk1, sk2, sk3, sk4, sk5, sk6, sk7, sk8, sk9; 95 96 hbm = (HPOINTER) WinSendDlgItemMsg(hwnd, 97 ABT_ICON, 98 SM_QUERYHANDLE, MPVOID, MPVOID); 99 if (hbm) { 100 sk0 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL0_ICON); 101 sk1 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL1_ICON); 102 sk2 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL2_ICON); 103 sk3 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL3_ICON); 104 sk4 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL4_ICON); 105 sk5 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL5_ICON); 106 sk6 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL6_ICON); 107 sk7 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL7_ICON); 108 sk8 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL8_ICON); 109 sk9 = WinLoadPointer(HWND_DESKTOP, FM3ModHandle, SKULL9_ICON); 110 if (sk0 && sk1 && sk2 && sk3 && sk4 && sk5 && sk6 && sk7 && 111 sk8 && sk9) { 112 WinShowWindow(WinWindowFromID(hwnd, ABT_ICON), FALSE); 113 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 114 MPFROMLONG(sk0), MPVOID); 115 WinShowWindow(WinWindowFromID(hwnd, ABT_ICON), TRUE); 116 DosSleep(33L); 117 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 118 MPFROMLONG(sk1), MPVOID); 119 DosSleep(33L); 120 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 121 MPFROMLONG(sk2), MPVOID); 122 DosSleep(33L); 123 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 124 MPFROMLONG(sk3), MPVOID); 125 DosSleep(33L); 126 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 127 MPFROMLONG(sk4), MPVOID); 128 DosSleep(33L); 129 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 130 MPFROMLONG(sk5), MPVOID); 131 DosSleep(33L); 132 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 133 MPFROMLONG(sk6), MPVOID); 134 DosSleep(33L); 135 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 136 MPFROMLONG(sk7), MPVOID); 137 DosSleep(33L); 138 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 139 MPFROMLONG(sk8), MPVOID); 140 DosSleep(33L); 141 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 142 MPFROMLONG(sk9), MPVOID); 143 DosSleep(257L); 144 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 145 MPFROMLONG(sk8), MPVOID); 146 DosSleep(33L); 147 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 148 MPFROMLONG(sk7), MPVOID); 149 DosSleep(33L); 150 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 151 MPFROMLONG(sk6), MPVOID); 152 DosSleep(33L); 153 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 154 MPFROMLONG(sk5), MPVOID); 155 DosSleep(33L); 156 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 157 MPFROMLONG(sk4), MPVOID); 158 DosSleep(33L); 159 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 160 MPFROMLONG(sk3), MPVOID); 161 DosSleep(33L); 162 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 163 MPFROMLONG(sk2), MPVOID); 164 DosSleep(33L); 165 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 166 MPFROMLONG(sk1), MPVOID); 167 DosSleep(33L); 168 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 169 MPFROMLONG(sk0), MPVOID); 170 DosSleep(33L); 171 WinShowWindow(WinWindowFromID(hwnd, ABT_ICON), FALSE); 172 WinSendDlgItemMsg(hwnd, ABT_ICON, SM_SETHANDLE, 173 MPFROMLONG(hbm), MPVOID); 174 WinShowWindow(WinWindowFromID(hwnd, ABT_ICON), TRUE); 175 } 176 if (sk0) 177 WinDestroyPointer(sk0); 178 if (sk1) 179 WinDestroyPointer(sk1); 180 if (sk2) 181 WinDestroyPointer(sk2); 182 if (sk3) 183 WinDestroyPointer(sk3); 184 if (sk4) 185 WinDestroyPointer(sk4); 186 if (sk5) 187 WinDestroyPointer(sk5); 188 if (sk6) 189 WinDestroyPointer(sk6); 190 if (sk7) 191 WinDestroyPointer(sk7); 192 if (sk8) 193 WinDestroyPointer(sk8); 194 if (sk9) 195 WinDestroyPointer(sk9); 54 196 } 55 if(mp2) 56 pause = TRUE; 57 else 58 pause = FALSE; 59 AboutBox = hwnd; 60 hab = WinQueryAnchorBlock(hwnd); 61 WinQueryWindowPos(hwnd,&swp); 62 width = swp.cx; 63 { 64 CHAR s[81]; 65 66 sprintf(s, 67 "%s %d.%02d%s", 68 GetPString(IDS_VERSIONTEXT), 69 VERMAJOR, 70 VERMINOR, 71 VERREALMINOR); 72 WinSetDlgItemText(hwnd, 73 ABT_VERSION, 74 s); 197 } 198 if (counter > 4) 199 WinDlgBox(HWND_DESKTOP, 200 hwnd, AuthorDlgProc, FM3ModHandle, AUTHOR_FRAME, NULL); 201 return 0; 202 203 case UM_SETDIR: 204 WinSetFocus(HWND_DESKTOP, HWND_DESKTOP); 205 DosSleep(2500L); 206 return 0; 207 208 case WM_TIMER: 209 WinQueryWindowPos(WinWindowFromID(hwnd, ABT_STICK1), &swp); 210 if (swp.x + (swp.cx * 3) > width - 3) { 211 direction = -2; 212 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), FALSE); 213 WinSendDlgItemMsg(hwnd, 214 ABT_STICK1, SM_SETHANDLE, MPFROMLONG(stick3), MPVOID); 215 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), TRUE); 216 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), FALSE); 217 WinSendDlgItemMsg(hwnd, 218 ABT_STICK2, 219 SM_SETHANDLE, MPFROMLONG(stick32), MPVOID); 220 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), TRUE); 221 no = TRUE; 222 } 223 else if (swp.x < 3) { 224 direction = 2; 225 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), FALSE); 226 WinSendDlgItemMsg(hwnd, ABT_STICK2, 227 SM_SETHANDLE, MPFROMLONG(stick32), MPVOID); 228 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), TRUE); 229 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), FALSE); 230 WinSendDlgItemMsg(hwnd, 231 ABT_STICK1, SM_SETHANDLE, MPFROMLONG(stick3), MPVOID); 232 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), TRUE); 233 no = TRUE; 234 } 235 swp.x += direction; 236 WinSetWindowPos(WinWindowFromID(hwnd, ABT_STICK1), 237 HWND_TOP, swp.x, swp.y, swp.cx, swp.cy, SWP_MOVE); 238 WinSetWindowPos(WinWindowFromID(hwnd, ABT_ICON), 239 HWND_TOP, 240 swp.x + swp.cx, swp.y, swp.cx, swp.cy, SWP_MOVE); 241 WinSetWindowPos(WinWindowFromID(hwnd, ABT_STICK2), 242 HWND_TOP, 243 swp.x + (swp.cx * 2), swp.y, swp.cx, swp.cy, SWP_MOVE); 244 if (!no) { 245 if (direction > 0) { 246 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), FALSE); 247 WinSendDlgItemMsg(hwnd, 248 ABT_STICK1, 249 SM_SETHANDLE, 250 MPFROMLONG((ticktock) ? stick1 : stick2), MPVOID); 251 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), TRUE); 252 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), FALSE); 253 WinSendDlgItemMsg(hwnd, 254 ABT_STICK2, 255 SM_SETHANDLE, 256 MPFROMLONG((ticktock) ? stick42 : stick52), MPVOID); 257 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), TRUE); 75 258 } 76 if(!strcmp(realappname,"FM/4")) 77 WinSetDlgItemText(hwnd, 78 ABT_PROGNAME, 79 GetPString(IDS_FM2LITETEXT)); 80 if(!pause) { 81 stick1 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK1); 82 stick2 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK2); 83 stick3 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK3); 84 stick4 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK4); 85 stick5 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK5); 86 stick12 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK12); 87 stick22 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK22); 88 stick32 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK32); 89 stick42 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK42); 90 stick52 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,ID_STICK52); 91 direction = 2; 92 ticktock = 0; 93 WinStartTimer(hab, 94 hwnd, 95 ID_TIMER, 96 164); 97 PostMsg(hwnd, 98 UM_SETUP, 99 MPVOID, 100 MPVOID); 259 else { 260 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), FALSE); 261 WinSendDlgItemMsg(hwnd, 262 ABT_STICK2, 263 SM_SETHANDLE, 264 MPFROMLONG((ticktock) ? stick12 : stick22), MPVOID); 265 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK2), TRUE); 266 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), FALSE); 267 WinSendDlgItemMsg(hwnd, 268 ABT_STICK1, 269 SM_SETHANDLE, 270 MPFROMLONG((ticktock) ? stick4 : stick5), MPVOID); 271 WinShowWindow(WinWindowFromID(hwnd, ABT_STICK1), TRUE); 101 272 } 273 } 274 ticktock = (ticktock) ? 0 : 1; 275 break; 276 277 case WM_COMMAND: 278 switch (SHORT1FROMMP(mp1)) { 279 case ABT_VERSION: 280 case DID_CANCEL: 281 WinDismissDlg(hwnd, 0); 102 282 break; 103 104 case UM_SETUP: 105 if(counter++ > 1) { 106 107 HPOINTER hbm,sk0,sk1,sk2,sk3,sk4,sk5,sk6,sk7,sk8,sk9; 108 109 hbm = (HPOINTER)WinSendDlgItemMsg(hwnd, 110 ABT_ICON, 111 SM_QUERYHANDLE, 112 MPVOID, 113 MPVOID); 114 if(hbm) { 115 sk0 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL0_ICON); 116 sk1 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL1_ICON); 117 sk2 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL2_ICON); 118 sk3 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL3_ICON); 119 sk4 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL4_ICON); 120 sk5 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL5_ICON); 121 sk6 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL6_ICON); 122 sk7 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL7_ICON); 123 sk8 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL8_ICON); 124 sk9 = WinLoadPointer(HWND_DESKTOP,FM3ModHandle,SKULL9_ICON); 125 if(sk0 && sk1 && sk2 && sk3 && sk4 && sk5 && sk6 && sk7 && 126 sk8 && sk9) { 127 WinShowWindow(WinWindowFromID(hwnd,ABT_ICON),FALSE); 128 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 129 MPFROMLONG(sk0),MPVOID); 130 WinShowWindow(WinWindowFromID(hwnd,ABT_ICON),TRUE); 131 DosSleep(33L); 132 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 133 MPFROMLONG(sk1),MPVOID); 134 DosSleep(33L); 135 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 136 MPFROMLONG(sk2),MPVOID); 137 DosSleep(33L); 138 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 139 MPFROMLONG(sk3),MPVOID); 140 DosSleep(33L); 141 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 142 MPFROMLONG(sk4),MPVOID); 143 DosSleep(33L); 144 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 145 MPFROMLONG(sk5),MPVOID); 146 DosSleep(33L); 147 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 148 MPFROMLONG(sk6),MPVOID); 149 DosSleep(33L); 150 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 151 MPFROMLONG(sk7),MPVOID); 152 DosSleep(33L); 153 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 154 MPFROMLONG(sk8),MPVOID); 155 DosSleep(33L); 156 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 157 MPFROMLONG(sk9),MPVOID); 158 DosSleep(257L); 159 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 160 MPFROMLONG(sk8),MPVOID); 161 DosSleep(33L); 162 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 163 MPFROMLONG(sk7),MPVOID); 164 DosSleep(33L); 165 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 166 MPFROMLONG(sk6),MPVOID); 167 DosSleep(33L); 168 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 169 MPFROMLONG(sk5),MPVOID); 170 DosSleep(33L); 171 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 172 MPFROMLONG(sk4),MPVOID); 173 DosSleep(33L); 174 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 175 MPFROMLONG(sk3),MPVOID); 176 DosSleep(33L); 177 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 178 MPFROMLONG(sk2),MPVOID); 179 DosSleep(33L); 180 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 181 MPFROMLONG(sk1),MPVOID); 182 DosSleep(33L); 183 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 184 MPFROMLONG(sk0),MPVOID); 185 DosSleep(33L); 186 WinShowWindow(WinWindowFromID(hwnd,ABT_ICON),FALSE); 187 WinSendDlgItemMsg(hwnd,ABT_ICON,SM_SETHANDLE, 188 MPFROMLONG(hbm),MPVOID); 189 WinShowWindow(WinWindowFromID(hwnd,ABT_ICON),TRUE); 190 } 191 if(sk0) 192 WinDestroyPointer(sk0); 193 if(sk1) 194 WinDestroyPointer(sk1); 195 if(sk2) 196 WinDestroyPointer(sk2); 197 if(sk3) 198 WinDestroyPointer(sk3); 199 if(sk4) 200 WinDestroyPointer(sk4); 201 if(sk5) 202 WinDestroyPointer(sk5); 203 if(sk6) 204 WinDestroyPointer(sk6); 205 if(sk7) 206 WinDestroyPointer(sk7); 207 if(sk8) 208 WinDestroyPointer(sk8); 209 if(sk9) 210 WinDestroyPointer(sk9); 211 } 283 } 284 return 0; 285 286 case WM_CLOSE: 287 WinDestroyWindow(hwnd); 288 return 0; 289 290 case WM_DESTROY: 291 if (hab) { 292 if (!pause) { 293 WinStopTimer(hab, hwnd, ID_TIMER); 294 WinDestroyPointer(stick1); 295 WinDestroyPointer(stick2); 296 WinDestroyPointer(stick3); 297 WinDestroyPointer(stick4); 298 WinDestroyPointer(stick5); 299 WinDestroyPointer(stick12); 300 WinDestroyPointer(stick22); 301 WinDestroyPointer(stick32); 302 WinDestroyPointer(stick42); 303 WinDestroyPointer(stick52); 212 304 } 213 if(counter > 4) 214 WinDlgBox(HWND_DESKTOP, 215 hwnd, 216 AuthorDlgProc, 217 FM3ModHandle, 218 AUTHOR_FRAME, 219 NULL); 220 return 0; 221 222 case UM_SETDIR: 223 WinSetFocus(HWND_DESKTOP,HWND_DESKTOP); 224 DosSleep(2500L); 225 return 0; 226 227 case WM_TIMER: 228 WinQueryWindowPos(WinWindowFromID(hwnd,ABT_STICK1),&swp); 229 if(swp.x + (swp.cx * 3) > width - 3) { 230 direction = -2; 231 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1),FALSE); 232 WinSendDlgItemMsg(hwnd, 233 ABT_STICK1, 234 SM_SETHANDLE, 235 MPFROMLONG(stick3), 236 MPVOID); 237 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 238 TRUE); 239 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 240 FALSE); 241 WinSendDlgItemMsg(hwnd, 242 ABT_STICK2, 243 SM_SETHANDLE, 244 MPFROMLONG(stick32), 245 MPVOID); 246 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 247 TRUE); 248 no = TRUE; 249 } 250 else if(swp.x < 3) { 251 direction = 2; 252 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 253 FALSE); 254 WinSendDlgItemMsg(hwnd,ABT_STICK2, 255 SM_SETHANDLE, 256 MPFROMLONG(stick32), 257 MPVOID); 258 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 259 TRUE); 260 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 261 FALSE); 262 WinSendDlgItemMsg(hwnd, 263 ABT_STICK1, 264 SM_SETHANDLE, 265 MPFROMLONG(stick3), 266 MPVOID); 267 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 268 TRUE); 269 no = TRUE; 270 } 271 swp.x += direction; 272 WinSetWindowPos(WinWindowFromID(hwnd,ABT_STICK1), 273 HWND_TOP, 274 swp.x, 275 swp.y, 276 swp.cx, 277 swp.cy, 278 SWP_MOVE); 279 WinSetWindowPos(WinWindowFromID(hwnd,ABT_ICON), 280 HWND_TOP, 281 swp.x + swp.cx, 282 swp.y, 283 swp.cx, 284 swp.cy, 285 SWP_MOVE); 286 WinSetWindowPos(WinWindowFromID(hwnd,ABT_STICK2), 287 HWND_TOP, 288 swp.x + (swp.cx * 2), 289 swp.y, 290 swp.cx, 291 swp.cy, 292 SWP_MOVE); 293 if(!no) { 294 if(direction > 0) { 295 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 296 FALSE); 297 WinSendDlgItemMsg(hwnd, 298 ABT_STICK1, 299 SM_SETHANDLE, 300 MPFROMLONG((ticktock) ? 301 stick1 : stick2), 302 MPVOID); 303 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 304 TRUE); 305 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 306 FALSE); 307 WinSendDlgItemMsg(hwnd, 308 ABT_STICK2, 309 SM_SETHANDLE, 310 MPFROMLONG((ticktock) ? 311 stick42 : stick52), 312 MPVOID); 313 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 314 TRUE); 315 } 316 else { 317 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 318 FALSE); 319 WinSendDlgItemMsg(hwnd, 320 ABT_STICK2, 321 SM_SETHANDLE, 322 MPFROMLONG((ticktock) ? 323 stick12 : stick22), 324 MPVOID); 325 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK2), 326 TRUE); 327 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 328 FALSE); 329 WinSendDlgItemMsg(hwnd, 330 ABT_STICK1, 331 SM_SETHANDLE, 332 MPFROMLONG((ticktock) ? 333 stick4 : stick5), 334 MPVOID); 335 WinShowWindow(WinWindowFromID(hwnd,ABT_STICK1), 336 TRUE); 337 } 338 } 339 ticktock = (ticktock) ? 0 : 1; 340 break; 341 342 case WM_COMMAND: 343 switch(SHORT1FROMMP(mp1)) { 344 case ABT_VERSION: 345 case DID_CANCEL: 346 WinDismissDlg(hwnd,0); 347 break; 348 } 349 return 0; 350 351 case WM_CLOSE: 352 WinDestroyWindow(hwnd); 353 return 0; 354 355 case WM_DESTROY: 356 if(hab) { 357 if(!pause) { 358 WinStopTimer(hab, 359 hwnd, 360 ID_TIMER); 361 WinDestroyPointer(stick1); 362 WinDestroyPointer(stick2); 363 WinDestroyPointer(stick3); 364 WinDestroyPointer(stick4); 365 WinDestroyPointer(stick5); 366 WinDestroyPointer(stick12); 367 WinDestroyPointer(stick22); 368 WinDestroyPointer(stick32); 369 WinDestroyPointer(stick42); 370 WinDestroyPointer(stick52); 371 } 372 hab = 0; 373 } 374 AboutBox = (HWND)0; 375 break; 305 hab = 0; 306 } 307 AboutBox = (HWND) 0; 308 break; 376 309 } 377 return WinDefDlgProc(hwnd, msg,mp1,mp2);310 return WinDefDlgProc(hwnd, msg, mp1, mp2); 378 311 }
Note:
See TracChangeset
for help on using the changeset viewer.
