| 127 void ui_show(UiObject *obj) { |
127 void ui_show(UiObject *obj) { |
| 128 ui_set_visible(obj->widget, TRUE); |
128 ui_set_visible(obj->widget, TRUE); |
| 129 } |
129 } |
| 130 |
130 |
| 131 LRESULT CALLBACK ui_default_eventproc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { |
131 LRESULT CALLBACK ui_default_eventproc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { |
| 132 fflush(stdout); |
|
| 133 W32Widget *widget = (W32Widget*)GetWindowLongPtr(hwnd, GWLP_USERDATA); |
132 W32Widget *widget = (W32Widget*)GetWindowLongPtr(hwnd, GWLP_USERDATA); |
| 134 if (widget && widget->wclass->eventproc) { |
133 if (widget && widget->wclass->eventproc) { |
| 135 widget->wclass->eventproc(widget, hwnd, uMsg, wParam, lParam); |
134 if (widget->wclass->eventproc(widget, hwnd, uMsg, wParam, lParam)) { |
| |
135 return 1; |
| |
136 } |
| 136 } |
137 } |
| |
138 |
| 137 switch(uMsg) { |
139 switch(uMsg) { |
| 138 case WM_DESTROY: { |
140 case WM_DESTROY: { |
| 139 PostQuitMessage(0); |
141 PostQuitMessage(0); |
| 140 break; |
142 break; |
| 141 } |
143 } |
| 162 if (widget->layout) { |
164 if (widget->layout) { |
| 163 widget->layout(widget->layoutmanager, width, height); |
165 widget->layout(widget->layoutmanager, width, height); |
| 164 } |
166 } |
| 165 break; |
167 break; |
| 166 } |
168 } |
| 167 default: return DefWindowProc(hwnd, uMsg, wParam, lParam); |
169 default: break;//return DefWindowProc(hwnd, uMsg, wParam, lParam); |
| 168 } |
170 } |
| 169 return 0; |
171 return DefWindowProc(hwnd, uMsg, wParam, lParam);; |
| 170 } |
172 } |