Differences From Artifact [983218cb4853f610]:
- File
src/qbga_gui.d
- 2011-02-23 12:53:16 - part of checkin [c2b7a98c21] on branch trunk - Initial import (user: kinaba) [annotate]
To Artifact [36c6085700197d43]:
- File
src/qbga_gui.d
- 2015-04-21 10:46:55 - part of checkin [4e2933c620] on branch trunk - Rebased to the latest verson dmd 2.067. Not yet verified the outcome. (user: kinaba) [annotate]
1 private import std.string; | 1 private import win32.windows;
2 private import win32.ansi.windows; | 2 private import win32.commctrl;
3 private import win32.ansi.commctrl; | 3 private import std.string;
4 private import qbga32; 4 private import qbga32;
5 5
6 void process_messages() 6 void process_messages()
7 { 7 {
8 for( MSG msg; PeekMessage( &msg, NULL, 0, 0, PM_REMOVE ); ) | 8 for( MSG msg; PeekMessageA( &msg, null, 0, 0, PM_REMOVE ); )
9 { 9 {
10 TranslateMessage( &msg ); 10 TranslateMessage( &msg );
11 DispatchMessage( &msg ); | 11 DispatchMessageA( &msg );
12 } 12 }
13 } 13 }
14 14
15 // 実装継承(w 15 // 実装継承(w
16 16
17 class Dialog 17 class Dialog
18 { 18 {
................................................................................................................................................................................
19 public: 19 public:
20 HWND hwnd() 20 HWND hwnd()
21 { 21 {
22 return handle; 22 return handle;
23 } 23 }
24 24
25 protected: 25 protected:
26 void on_init() { MessageBox(null,"xxx",null,MB_OK); } | 26 void on_init() { MessageBoxA(null,"xxx",null,MB_OK); }
27 bool on_ok() { return false; } 27 bool on_ok() { return false; }
28 bool on_cancel() { return false; } 28 bool on_cancel() { return false; }
29 bool on_command( UINT cmd ) { return false; } 29 bool on_command( UINT cmd ) { return false; }
30 bool on_message( UINT msg, WPARAM wp, LPARAM lp ) { return false; } 30 bool on_message( UINT msg, WPARAM wp, LPARAM lp ) { return false; }
31 31
32 extern(Windows) private static BOOL 32 extern(Windows) private static BOOL
33 static_dlg_proc( HWND dlg, UINT msg, WPARAM wp, LPARAM lp ) 33 static_dlg_proc( HWND dlg, UINT msg, WPARAM wp, LPARAM lp )
................................................................................................................................................................................
76 dlg_template, 76 dlg_template,
77 parent, 77 parent,
78 &static_dlg_proc, 78 &static_dlg_proc,
79 cast(LPARAM) cast(Dialog*) this 79 cast(LPARAM) cast(Dialog*) this
80 ); 80 );
81 } 81 }
82 82
83 void set_item_text( int ID, char[] str ) | 83 void set_item_text( int ID, string str )
84 { 84 {
85 SetDlgItemText( handle, ID, toStringz(str) ); | 85 SetDlgItemTextA( handle, ID, toStringz(str) );
86 } 86 }
87 87
88 int send_item_msg( int ID, UINT msg, WPARAM wp=0, LPARAM lp=0 ) 88 int send_item_msg( int ID, UINT msg, WPARAM wp=0, LPARAM lp=0 )
89 { 89 {
90 return SendDlgItemMessage( handle, ID, msg, wp, lp ); 90 return SendDlgItemMessage( handle, ID, msg, wp, lp );
91 } 91 }
92 } 92 }
................................................................................................................................................................................
102 class ProgressDlg : Dialog 102 class ProgressDlg : Dialog
103 { 103 {
104 this( DLGTEMPLATE* dlg_template, HWND parent ) 104 this( DLGTEMPLATE* dlg_template, HWND parent )
105 { 105 {
106 BeginModeless( dlg_template, parent ); 106 BeginModeless( dlg_template, parent );
107 } 107 }
108 108
109 void set_arcname ( char[] str ){ set_item_text( 2006, str ); } | 109 void set_arcname ( string str ){ set_item_text( 2006, str ); }
110 void set_filename( char[] str ){ set_item_text( 2007, str ); } | 110 void set_filename( string str ){ set_item_text( 2007, str ); }
111 void set_max( real m ) { max = m; } 111 void set_max( real m ) { max = m; }
112 void set_pos( real p ) { send_item_msg(2024,PBM_SETPOS,cast(int)(p/max*6 112 void set_pos( real p ) { send_item_msg(2024,PBM_SETPOS,cast(int)(p/max*6
113 113
114 bool closed() 114 bool closed()
115 { 115 {
116 return !alive; 116 return !alive;
117 } 117 }