Artifact 5518278e91d2e2fcf173517ec14ea7f1cae9fdfc:
- File
src/qbga_gui.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: ef bb bf 70 72 69 76 61 74 65 20 69 6d 70 6f 72 ...private impor 0010: 74 20 77 69 6e 33 32 2e 77 69 6e 64 6f 77 73 3b t win32.windows; 0020: 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 .private import 0030: 77 69 6e 33 32 2e 63 6f 6d 6d 63 74 72 6c 3b 0a win32.commctrl;. 0040: 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 73 private import s 0050: 74 64 2e 73 74 72 69 6e 67 3b 0a 0a 76 6f 69 64 td.string;..void 0060: 20 70 72 6f 63 65 73 73 5f 6d 65 73 73 61 67 65 process_message 0070: 73 28 29 0a 7b 0a 09 66 6f 72 28 20 4d 53 47 20 s().{..for( MSG 0080: 6d 73 67 3b 20 50 65 65 6b 4d 65 73 73 61 67 65 msg; PeekMessage 0090: 41 28 20 26 6d 73 67 2c 20 6e 75 6c 6c 2c 20 30 A( &msg, null, 0 00a0: 2c 20 30 2c 20 50 4d 5f 52 45 4d 4f 56 45 20 29 , 0, PM_REMOVE ) 00b0: 3b 20 29 0a 09 7b 0a 09 09 54 72 61 6e 73 6c 61 ; )..{...Transla 00c0: 74 65 4d 65 73 73 61 67 65 28 20 26 6d 73 67 20 teMessage( &msg 00d0: 29 3b 0a 09 09 44 69 73 70 61 74 63 68 4d 65 73 );...DispatchMes 00e0: 73 61 67 65 41 28 20 26 6d 73 67 20 29 3b 0a 09 sageA( &msg );.. 00f0: 7d 0a 7d 0a 0a 63 6c 61 73 73 20 44 69 61 6c 6f }.}..class Dialo 0100: 67 0a 7b 0a 70 75 62 6c 69 63 3a 0a 09 48 57 4e g.{.public:..HWN 0110: 44 20 68 77 6e 64 28 29 0a 09 7b 0a 09 09 72 65 D hwnd()..{...re 0120: 74 75 72 6e 20 68 61 6e 64 6c 65 3b 0a 09 7d 0a turn handle;..}. 0130: 0a 70 72 6f 74 65 63 74 65 64 3a 0a 09 76 6f 69 .protected:..voi 0140: 64 20 6f 6e 5f 69 6e 69 74 28 29 20 20 20 7b 7d d on_init() {} 0150: 0a 09 62 6f 6f 6c 20 6f 6e 5f 6f 6b 28 29 20 20 ..bool on_ok() 0160: 20 20 20 7b 20 72 65 74 75 72 6e 20 66 61 6c 73 { return fals 0170: 65 3b 20 7d 0a 09 62 6f 6f 6c 20 6f 6e 5f 63 61 e; }..bool on_ca 0180: 6e 63 65 6c 28 29 20 7b 20 72 65 74 75 72 6e 20 ncel() { return 0190: 66 61 6c 73 65 3b 20 7d 0a 09 62 6f 6f 6c 20 6f false; }..bool o 01a0: 6e 5f 63 6f 6d 6d 61 6e 64 28 20 55 49 4e 54 20 n_command( UINT 01b0: 63 6d 64 20 29 20 7b 20 72 65 74 75 72 6e 20 66 cmd ) { return f 01c0: 61 6c 73 65 3b 20 7d 0a 09 62 6f 6f 6c 20 6f 6e alse; }..bool on 01d0: 5f 6d 65 73 73 61 67 65 28 20 55 49 4e 54 20 6d _message( UINT m 01e0: 73 67 2c 20 57 50 41 52 41 4d 20 77 70 2c 20 4c sg, WPARAM wp, L 01f0: 50 41 52 41 4d 20 6c 70 20 29 20 7b 20 72 65 74 PARAM lp ) { ret 0200: 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 0a 09 65 urn false; }...e 0210: 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 70 xtern(Windows) p 0220: 72 69 76 61 74 65 20 73 74 61 74 69 63 20 42 4f rivate static BO 0230: 4f 4c 0a 09 09 73 74 61 74 69 63 5f 64 6c 67 5f OL...static_dlg_ 0240: 70 72 6f 63 28 20 48 57 4e 44 20 64 6c 67 2c 20 proc( HWND dlg, 0250: 55 49 4e 54 20 6d 73 67 2c 20 57 50 41 52 41 4d UINT msg, WPARAM 0260: 20 77 70 2c 20 4c 50 41 52 41 4d 20 6c 70 20 29 wp, LPARAM lp ) 0270: 0a 09 7b 0a 09 09 69 66 28 20 6d 73 67 20 3d 3d ..{...if( msg == 0280: 20 57 4d 5f 49 4e 49 54 44 49 41 4c 4f 47 20 29 WM_INITDIALOG ) 0290: 0a 09 09 7b 0a 09 09 09 53 65 74 57 69 6e 64 6f ...{....SetWindo 02a0: 77 4c 6f 6e 67 28 20 64 6c 67 2c 20 47 57 4c 5f wLong( dlg, GWL_ 02b0: 55 53 45 52 44 41 54 41 2c 20 6c 70 20 29 3b 0a USERDATA, lp );. 02c0: 0a 09 09 09 44 69 61 6c 6f 67 20 70 74 72 20 3d ....Dialog ptr = 02d0: 20 63 61 73 74 28 44 69 61 6c 6f 67 29 20 63 61 cast(Dialog) ca 02e0: 73 74 28 44 69 61 6c 6f 67 2a 29 20 6c 70 3b 0a st(Dialog*) lp;. 02f0: 09 09 09 70 74 72 2e 68 61 6e 64 6c 65 20 3d 20 ...ptr.handle = 0300: 64 6c 67 3b 0a 09 09 09 70 74 72 2e 6f 6e 5f 69 dlg;....ptr.on_i 0310: 6e 69 74 28 29 3b 0a 09 09 09 72 65 74 75 72 6e nit();....return 0320: 20 46 41 4c 53 45 3b 0a 09 09 7d 0a 0a 09 09 44 FALSE;...}....D 0330: 69 61 6c 6f 67 20 70 74 72 20 3d 20 63 61 73 74 ialog ptr = cast 0340: 28 44 69 61 6c 6f 67 29 20 63 61 73 74 28 44 69 (Dialog) cast(Di 0350: 61 6c 6f 67 2a 29 20 47 65 74 57 69 6e 64 6f 77 alog*) GetWindow 0360: 4c 6f 6e 67 28 64 6c 67 2c 47 57 4c 5f 55 53 45 Long(dlg,GWL_USE 0370: 52 44 41 54 41 29 3b 0a 09 09 69 66 28 20 70 74 RDATA);...if( pt 0380: 72 20 69 73 20 6e 75 6c 6c 20 29 0a 09 09 09 72 r is null )....r 0390: 65 74 75 72 6e 20 46 41 4c 53 45 3b 0a 0a 09 09 eturn FALSE;.... 03a0: 69 66 28 20 6d 73 67 20 3d 3d 20 57 4d 5f 43 4f if( msg == WM_CO 03b0: 4d 4d 41 4e 44 20 29 0a 09 09 09 69 66 28 20 4c MMAND )....if( L 03c0: 4f 57 4f 52 44 28 77 70 29 20 3d 3d 20 49 44 4f OWORD(wp) == IDO 03d0: 4b 20 29 0a 09 09 09 09 72 65 74 75 72 6e 20 70 K ).....return p 03e0: 74 72 2e 6f 6e 5f 6f 6b 28 29 3b 0a 09 09 09 65 tr.on_ok();....e 03f0: 6c 73 65 20 69 66 28 20 4c 4f 57 4f 52 44 28 77 lse if( LOWORD(w 0400: 70 29 20 3d 3d 20 49 44 43 41 4e 43 45 4c 20 29 p) == IDCANCEL ) 0410: 0a 09 09 09 09 72 65 74 75 72 6e 20 70 74 72 2e .....return ptr. 0420: 6f 6e 5f 63 61 6e 63 65 6c 28 29 3b 0a 09 09 09 on_cancel();.... 0430: 65 6c 73 65 0a 09 09 09 09 72 65 74 75 72 6e 20 else.....return 0440: 70 74 72 2e 6f 6e 5f 63 6f 6d 6d 61 6e 64 28 20 ptr.on_command( 0450: 4c 4f 57 4f 52 44 28 77 70 29 20 29 3b 0a 09 09 LOWORD(wp) );... 0460: 72 65 74 75 72 6e 20 70 74 72 2e 6f 6e 5f 6d 65 return ptr.on_me 0470: 73 73 61 67 65 28 6d 73 67 2c 77 70 2c 6c 70 29 ssage(msg,wp,lp) 0480: 3b 0a 09 7d 0a 0a 70 72 6f 74 65 63 74 65 64 3a ;..}..protected: 0490: 0a 09 48 57 4e 44 20 68 61 6e 64 6c 65 3b 0a 09 ..HWND handle;.. 04a0: 76 6f 69 64 20 42 65 67 69 6e 4d 6f 64 65 6c 65 void BeginModele 04b0: 73 73 28 20 44 4c 47 54 45 4d 50 4c 41 54 45 2a ss( DLGTEMPLATE* 04c0: 20 64 6c 67 5f 74 65 6d 70 6c 61 74 65 2c 20 48 dlg_template, H 04d0: 57 4e 44 20 70 61 72 65 6e 74 20 29 0a 09 7b 0a WND parent )..{. 04e0: 09 09 43 72 65 61 74 65 44 69 61 6c 6f 67 49 6e ..CreateDialogIn 04f0: 64 69 72 65 63 74 50 61 72 61 6d 28 0a 09 09 09 directParam(.... 0500: 47 65 74 4d 6f 64 75 6c 65 48 61 6e 64 6c 65 28 GetModuleHandle( 0510: 6e 75 6c 6c 29 2c 0a 09 09 09 64 6c 67 5f 74 65 null),....dlg_te 0520: 6d 70 6c 61 74 65 2c 0a 09 09 09 70 61 72 65 6e mplate,....paren 0530: 74 2c 0a 09 09 09 26 73 74 61 74 69 63 5f 64 6c t,....&static_dl 0540: 67 5f 70 72 6f 63 2c 0a 09 09 09 63 61 73 74 28 g_proc,....cast( 0550: 4c 50 41 52 41 4d 29 20 63 61 73 74 28 44 69 61 LPARAM) cast(Dia 0560: 6c 6f 67 2a 29 20 74 68 69 73 0a 09 09 29 3b 0a log*) this...);. 0570: 09 7d 0a 0a 09 69 6e 74 20 42 65 67 69 6e 4d 6f .}...int BeginMo 0580: 64 61 6c 28 20 44 4c 47 54 45 4d 50 4c 41 54 45 dal( DLGTEMPLATE 0590: 2a 20 64 6c 67 5f 74 65 6d 70 6c 61 74 65 2c 20 * dlg_template, 05a0: 48 57 4e 44 20 70 61 72 65 6e 74 20 29 0a 09 7b HWND parent )..{ 05b0: 0a 09 09 72 65 74 75 72 6e 20 44 69 61 6c 6f 67 ...return Dialog 05c0: 42 6f 78 49 6e 64 69 72 65 63 74 50 61 72 61 6d BoxIndirectParam 05d0: 28 0a 09 09 09 47 65 74 4d 6f 64 75 6c 65 48 61 (....GetModuleHa 05e0: 6e 64 6c 65 28 6e 75 6c 6c 29 2c 0a 09 09 09 64 ndle(null),....d 05f0: 6c 67 5f 74 65 6d 70 6c 61 74 65 2c 0a 09 09 09 lg_template,.... 0600: 70 61 72 65 6e 74 2c 0a 09 09 09 26 73 74 61 74 parent,....&stat 0610: 69 63 5f 64 6c 67 5f 70 72 6f 63 2c 0a 09 09 09 ic_dlg_proc,.... 0620: 63 61 73 74 28 4c 50 41 52 41 4d 29 20 63 61 73 cast(LPARAM) cas 0630: 74 28 44 69 61 6c 6f 67 2a 29 20 74 68 69 73 0a t(Dialog*) this. 0640: 09 09 29 3b 0a 09 7d 0a 0a 09 76 6f 69 64 20 73 ..);..}...void s 0650: 65 74 5f 69 74 65 6d 5f 74 65 78 74 28 20 69 6e et_item_text( in 0660: 74 20 49 44 2c 20 73 74 72 69 6e 67 20 73 74 72 t ID, string str 0670: 20 29 0a 09 7b 0a 09 09 53 65 74 44 6c 67 49 74 )..{...SetDlgIt 0680: 65 6d 54 65 78 74 41 28 20 68 61 6e 64 6c 65 2c emTextA( handle, 0690: 20 49 44 2c 20 74 6f 53 74 72 69 6e 67 7a 28 73 ID, toStringz(s 06a0: 74 72 29 20 29 3b 0a 09 7d 0a 0a 09 69 6e 74 20 tr) );..}...int 06b0: 73 65 6e 64 5f 69 74 65 6d 5f 6d 73 67 28 20 69 send_item_msg( i 06c0: 6e 74 20 49 44 2c 20 55 49 4e 54 20 6d 73 67 2c nt ID, UINT msg, 06d0: 20 57 50 41 52 41 4d 20 77 70 3d 30 2c 20 4c 50 WPARAM wp=0, LP 06e0: 41 52 41 4d 20 6c 70 3d 30 20 29 0a 09 7b 0a 09 ARAM lp=0 )..{.. 06f0: 09 72 65 74 75 72 6e 20 53 65 6e 64 44 6c 67 49 .return SendDlgI 0700: 74 65 6d 4d 65 73 73 61 67 65 28 20 68 61 6e 64 temMessage( hand 0710: 6c 65 2c 20 49 44 2c 20 6d 73 67 2c 20 77 70 2c le, ID, msg, wp, 0720: 20 6c 70 20 29 3b 0a 09 7d 0a 7d 0a 0a 2f 2f 2d lp );..}.}..//- 0730: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0740: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0750: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0760: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 2f 2f 20 23 -----------.// # 0770: 32 30 32 35 20 5b e3 83 95 e3 82 a1 e3 82 a4 e3 2025 [.......... 0780: 83 ab e3 82 92 e6 93 8d e4 bd 9c e4 b8 ad 5d 0a ..............]. 0790: 2f 2f 20 20 20 32 30 30 36 20 3a 20 e6 9b b8 e5 // 2006 : .... 07a0: ba ab e5 90 8d 0a 2f 2f 20 20 20 32 30 30 37 20 ......// 2007 07b0: 3a 20 e3 83 95 e3 82 a1 e3 82 a4 e3 83 ab e5 90 : .............. 07c0: 8d ef bc 88 e3 83 91 e3 82 b9 e7 84 a1 e3 81 97 ................ 07d0: ef bc 89 0a 2f 2f 20 20 20 32 30 32 34 20 3a 20 ....// 2024 : 07e0: e3 83 97 e3 83 ad e3 82 b0 e3 83 ac e3 82 b9 e3 ................ 07f0: 83 90 e3 83 bc 0a 2f 2f 20 20 20 20 20 20 32 20 ......// 2 0800: 3a 20 e3 82 ad e3 83 a3 e3 83 b3 e3 82 bb e3 83 : .............. 0810: ab e3 83 9c e3 82 bf e3 83 b3 0a 2f 2f 2d 2d 2d ...........//--- 0820: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0830: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0840: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 63 6c 61 73 73 ---------..class 0860: 20 50 72 6f 67 72 65 73 73 44 6c 67 20 3a 20 44 ProgressDlg : D 0870: 69 61 6c 6f 67 0a 7b 0a 09 74 68 69 73 28 20 44 ialog.{..this( D 0880: 4c 47 54 45 4d 50 4c 41 54 45 2a 20 64 6c 67 5f LGTEMPLATE* dlg_ 0890: 74 65 6d 70 6c 61 74 65 2c 20 48 57 4e 44 20 70 template, HWND p 08a0: 61 72 65 6e 74 20 29 0a 09 7b 0a 09 09 42 65 67 arent )..{...Beg 08b0: 69 6e 4d 6f 64 65 6c 65 73 73 28 20 64 6c 67 5f inModeless( dlg_ 08c0: 74 65 6d 70 6c 61 74 65 2c 20 70 61 72 65 6e 74 template, parent 08d0: 20 29 3b 0a 09 7d 0a 0a 09 76 6f 69 64 20 73 65 );..}...void se 08e0: 74 5f 61 72 63 6e 61 6d 65 20 28 20 73 74 72 69 t_arcname ( stri 08f0: 6e 67 20 73 74 72 20 29 7b 20 73 65 74 5f 69 74 ng str ){ set_it 0900: 65 6d 5f 74 65 78 74 28 20 32 30 30 36 2c 20 73 em_text( 2006, s 0910: 74 72 20 29 3b 20 7d 0a 09 76 6f 69 64 20 73 65 tr ); }..void se 0920: 74 5f 66 69 6c 65 6e 61 6d 65 28 20 73 74 72 69 t_filename( stri 0930: 6e 67 20 73 74 72 20 29 7b 20 73 65 74 5f 69 74 ng str ){ set_it 0940: 65 6d 5f 74 65 78 74 28 20 32 30 30 37 2c 20 73 em_text( 2007, s 0950: 74 72 20 29 3b 20 7d 0a 09 76 6f 69 64 20 73 65 tr ); }..void se 0960: 74 5f 6d 61 78 28 20 72 65 61 6c 20 6d 20 29 20 t_max( real m ) 0970: 7b 20 6d 61 78 20 3d 20 6d 3b 20 7d 0a 09 76 6f { max = m; }..vo 0980: 69 64 20 73 65 74 5f 70 6f 73 28 20 72 65 61 6c id set_pos( real 0990: 20 70 20 29 20 7b 20 73 65 6e 64 5f 69 74 65 6d p ) { send_item 09a0: 5f 6d 73 67 28 32 30 32 34 2c 50 42 4d 5f 53 45 _msg(2024,PBM_SE 09b0: 54 50 4f 53 2c 63 61 73 74 28 69 6e 74 29 28 70 TPOS,cast(int)(p 09c0: 2f 6d 61 78 2a 36 35 35 33 35 29 2c 30 29 3b 20 /max*65535),0); 09d0: 7d 0a 0a 09 62 6f 6f 6c 20 63 6c 6f 73 65 64 28 }...bool closed( 09e0: 29 0a 09 7b 0a 09 09 72 65 74 75 72 6e 20 21 61 )..{...return !a 09f0: 6c 69 76 65 3b 0a 09 7d 0a 0a 09 76 6f 69 64 20 live;..}...void 0a00: 63 6c 6f 73 65 28 29 0a 09 7b 0a 09 09 69 66 28 close()..{...if( 0a10: 20 21 63 6c 6f 73 65 64 20 29 0a 09 09 09 6f 6e !closed )....on 0a20: 5f 63 61 6e 63 65 6c 28 29 3b 0a 09 7d 0a 0a 70 _cancel();..}..p 0a30: 72 6f 74 65 63 74 65 64 3a 0a 09 62 6f 6f 6c 20 rotected:..bool 0a40: 61 6c 69 76 65 20 3d 20 66 61 6c 73 65 3b 0a 09 alive = false;.. 0a50: 72 65 61 6c 20 6d 61 78 20 3d 20 31 2e 30 3b 0a real max = 1.0;. 0a60: 0a 09 6f 76 65 72 72 69 64 65 20 76 6f 69 64 20 ..override void 0a70: 6f 6e 5f 69 6e 69 74 28 29 0a 09 7b 0a 09 09 61 on_init()..{...a 0a80: 6c 69 76 65 20 3d 20 74 72 75 65 3b 0a 09 09 73 live = true;...s 0a90: 65 6e 64 5f 69 74 65 6d 5f 6d 73 67 28 20 32 30 end_item_msg( 20 0aa0: 32 34 2c 20 50 42 4d 5f 53 45 54 52 41 4e 47 45 24, PBM_SETRANGE 0ab0: 2c 20 30 2c 20 4d 41 4b 45 4c 50 41 52 41 4d 28 , 0, MAKELPARAM( 0ac0: 30 2c 36 35 35 33 35 29 20 29 3b 0a 0a 09 09 2f 0,65535) );..../ 0ad0: 2f 20 e3 82 bb e3 83 b3 e3 82 bf e3 83 aa e3 83 / .............. 0ae0: b3 e3 82 b0 0a 09 09 52 45 43 54 20 72 63 2c 70 .......RECT rc,p 0af0: 72 3b 0a 09 09 47 65 74 57 69 6e 64 6f 77 52 65 r;...GetWindowRe 0b00: 63 74 28 20 68 61 6e 64 6c 65 2c 20 26 72 63 20 ct( handle, &rc 0b10: 29 3b 0a 09 09 48 57 4e 44 20 70 61 72 20 3d 20 );...HWND par = 0b20: 47 65 74 50 61 72 65 6e 74 28 68 61 6e 64 6c 65 GetParent(handle 0b30: 29 3b 0a 09 09 69 66 28 20 70 61 72 20 29 0a 09 );...if( par ).. 0b40: 09 09 47 65 74 57 69 6e 64 6f 77 52 65 63 74 28 ..GetWindowRect( 0b50: 20 70 61 72 2c 20 26 70 72 20 29 3b 0a 09 09 65 par, &pr );...e 0b60: 6c 73 65 0a 09 09 09 53 79 73 74 65 6d 50 61 72 lse....SystemPar 0b70: 61 6d 65 74 65 72 73 49 6e 66 6f 28 20 53 50 49 ametersInfo( SPI 0b80: 5f 47 45 54 57 4f 52 4b 41 52 45 41 2c 20 30 2c _GETWORKAREA, 0, 0b90: 20 26 70 72 2c 20 30 20 29 3b 0a 09 09 53 65 74 &pr, 0 );...Set 0ba0: 57 69 6e 64 6f 77 50 6f 73 28 20 68 61 6e 64 6c WindowPos( handl 0bb0: 65 2c 20 6e 75 6c 6c 2c 0a 09 09 09 70 72 2e 6c e, null,....pr.l 0bc0: 65 66 74 20 2b 20 28 20 28 70 72 2e 72 69 67 68 eft + ( (pr.righ 0bd0: 74 2d 70 72 2e 6c 65 66 74 29 2d 28 72 63 2e 72 t-pr.left)-(rc.r 0be0: 69 67 68 74 2d 72 63 2e 6c 65 66 74 29 20 29 2f ight-rc.left) )/ 0bf0: 32 2c 0a 09 09 09 70 72 2e 74 6f 70 20 20 2b 20 2,....pr.top + 0c00: 28 20 28 70 72 2e 62 6f 74 74 6f 6d 2d 70 72 2e ( (pr.bottom-pr. 0c10: 74 6f 70 29 2d 28 72 63 2e 62 6f 74 74 6f 6d 2d top)-(rc.bottom- 0c20: 72 63 2e 74 6f 70 29 20 29 2f 32 2c 0a 09 09 09 rc.top) )/2,.... 0c30: 30 2c 20 30 2c 20 53 57 50 5f 4e 4f 53 49 5a 45 0, 0, SWP_NOSIZE 0c40: 7c 53 57 50 5f 4e 4f 5a 4f 52 44 45 52 20 29 3b |SWP_NOZORDER ); 0c50: 0a 0a 09 09 2f 2f 20 e8 a1 a8 e7 a4 ba 0a 09 09 ....// ......... 0c60: 53 68 6f 77 57 69 6e 64 6f 77 28 68 61 6e 64 6c ShowWindow(handl 0c70: 65 2c 53 57 5f 53 48 4f 57 29 3b 0a 09 09 55 70 e,SW_SHOW);...Up 0c80: 64 61 74 65 57 69 6e 64 6f 77 28 68 61 6e 64 6c dateWindow(handl 0c90: 65 29 3b 0a 09 7d 0a 0a 09 6f 76 65 72 72 69 64 e);..}...overrid 0ca0: 65 20 62 6f 6f 6c 20 6f 6e 5f 63 61 6e 63 65 6c e bool on_cancel 0cb0: 28 29 0a 09 7b 0a 09 09 61 6c 69 76 65 20 3d 20 ()..{...alive = 0cc0: 66 61 6c 73 65 3b 0a 09 09 44 65 73 74 72 6f 79 false;...Destroy 0cd0: 57 69 6e 64 6f 77 28 68 61 6e 64 6c 65 29 3b 0a Window(handle);. 0ce0: 09 09 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 09 ..return true;.. 0cf0: 7d 0a 7d 0a 0a 2f 2f 2d 2d 2d 2d 2d 2d 2d 2d 2d }.}..//--------- 0d00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0d10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0d20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0d30: 2d 2d 2d 0a 2f 2f 20 23 32 30 30 30 20 20 5b e3 ---.// #2000 [. 0d40: 83 95 e3 82 a1 e3 82 a4 e3 83 ab e3 81 ae e4 b8 ................ 0d50: 8a e6 9b b8 e3 81 8d e7 a2 ba e8 aa 8d 5d 0a 2f .............]./ 0d60: 2f 20 20 20 32 30 30 36 20 e6 9b b8 e5 ba ab e5 / 2006 ....... 0d70: 86 85 e3 83 95 e3 82 a1 e3 82 a4 e3 83 ab e5 90 ................ 0d80: 8d 0a 2f 2f 20 20 20 32 30 30 39 20 e3 83 95 e3 ..// 2009 .... 0d90: 82 a1 e3 82 a4 e3 83 ab e3 82 b5 e3 82 a4 e3 82 ................ 0da0: ba 20 20 20 35 36 34 2c 35 39 30 20 42 79 74 65 . 564,590 Byte 0db0: 0a 2f 2f 20 20 20 32 30 31 30 20 e6 9b b4 e6 96 .// 2010 ..... 0dc0: b0 e6 97 a5 e6 99 82 20 20 20 20 20 20 20 20 20 ....... 0dd0: 32 30 30 34 5c 30 38 5c 32 37 20 30 33 3a 35 37 2004\08\27 03:57 0de0: 3a 31 38 0a 2f 2f 20 20 20 32 30 30 37 20 e5 a4 :18.// 2007 .. 0df0: 96 e9 83 a8 e3 83 95 e3 82 a1 e3 82 a4 e3 83 ab ................ 0e00: e5 90 8d 0a 2f 2f 20 20 20 32 30 31 31 20 e3 83 ....// 2011 .. 0e10: 95 e3 82 a1 e3 82 a4 e3 83 ab e3 82 b5 e3 82 a4 ................ 0e20: e3 82 ba 0a 2f 2f 20 20 20 32 30 31 32 20 e6 9b ....// 2012 .. 0e30: b4 e6 96 b0 e6 97 a5 e6 99 82 0a 2f 2f 0a 2f 2f ...........//.// 0e40: 20 20 20 32 30 30 32 3a e4 b8 8a e6 9b b8 e3 81 2002:........ 0e50: 8d 20 20 32 30 30 34 3a e6 97 a5 e4 bb 98 e3 81 . 2004:........ 0e60: 8c e6 96 b0 e3 81 97 e3 81 91 e3 82 8c e3 81 b0 ................ 0e70: e4 b8 8a e6 9b b8 e3 81 8d 20 32 30 30 33 3a e4 ......... 2003:. 0e80: b8 8a e6 9b b8 e3 81 8d e3 81 97 e3 81 aa e3 81 ................ 0e90: 84 0a 2f 2f 0a 2f 2f 20 20 20 20 20 20 31 3a 20 ..//.// 1: 0ea0: 4f 4b e3 83 9c e3 82 bf e3 83 b3 0a 2f 2f 20 20 OK..........// 0eb0: 20 32 30 30 35 3a 20 e4 bb a5 e9 99 8d e5 85 a8 2005: ......... 0ec0: e3 81 a6 e3 81 ab e9 81 a9 e7 94 a8 e3 83 9c e3 ................ 0ed0: 82 bf e3 83 b3 0a 2f 2f 20 20 20 20 20 20 32 3a ......// 2: 0ee0: 20 e3 82 ad e3 83 a3 e3 83 b3 e3 82 bb e3 83 ab ............... 0ef0: e3 83 9c e3 82 bf e3 83 b3 0a 2f 2f 2d 2d 2d 2d ..........//---- 0f00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0f10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0f20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0f30: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a --------..