(ui_win32.c) Cleanups

This commit is contained in:
twinaphex 2015-11-19 08:52:26 +01:00
parent ec9ae5f7ac
commit 4d20ea936f
2 changed files with 48 additions and 39 deletions

View File

@ -109,7 +109,7 @@ void win32_monitor_from_window(HWND data, bool destroy)
{ {
#ifndef _XBOX #ifndef _XBOX
win32_monitor_last = MonitorFromWindow(data, MONITOR_DEFAULTTONEAREST); win32_monitor_last = MonitorFromWindow(data, MONITOR_DEFAULTTONEAREST);
if (destroy) if (destroy && data)
DestroyWindow(data); DestroyWindow(data);
#endif #endif
} }

View File

@ -136,47 +136,56 @@ static void shader_dlg_params_refresh(void)
for (i = 0; i < GFX_MAX_PARAMETERS; i++) for (i = 0; i < GFX_MAX_PARAMETERS; i++)
{ {
if (g_shader_dlg.controls[i].type == SHADER_PARAM_CTRL_NONE) shader_param_ctrl_t*control = &g_shader_dlg.controls[i];
if (control->type == SHADER_PARAM_CTRL_NONE)
break; break;
if (g_shader_dlg.controls[i].type == SHADER_PARAM_CTRL_CHECKBOX) switch (control->type)
{ {
bool checked = (shader->parameters[i].current == shader->parameters[i].maximum); case SHADER_PARAM_CTRL_CHECKBOX:
SendMessage(g_shader_dlg.controls[i].checkbox.hwnd, BM_SETCHECK, checked, 0); {
bool checked = (shader->parameters[i].current == shader->parameters[i].maximum);
} SendMessage(control->checkbox.hwnd, BM_SETCHECK, checked, 0);
else if (g_shader_dlg.controls[i].type == SHADER_PARAM_CTRL_TRACKBAR) }
{ break;
shader_dlg_refresh_trackbar_label(i); case SHADER_PARAM_CTRL_TRACKBAR:
shader_dlg_refresh_trackbar_label(i);
SendMessage(g_shader_dlg.controls[i].trackbar.hwnd, TBM_SETRANGEMIN, (WPARAM)TRUE, (LPARAM)0);
SendMessage(g_shader_dlg.controls[i].trackbar.hwnd, TBM_SETRANGEMAX, (WPARAM)TRUE,
(LPARAM)((shader->parameters[i].maximum - shader->parameters[i].minimum) / shader->parameters[i].step));
SendMessage(g_shader_dlg.controls[i].trackbar.hwnd, TBM_SETPOS, (WPARAM)TRUE,
(LPARAM)((shader->parameters[i].current - shader->parameters[i].minimum) / shader->parameters[i].step));
SendMessage(control->trackbar.hwnd, TBM_SETRANGEMIN, (WPARAM)TRUE, (LPARAM)0);
SendMessage(control->trackbar.hwnd, TBM_SETRANGEMAX, (WPARAM)TRUE,
(LPARAM)((shader->parameters[i].maximum - shader->parameters[i].minimum) / shader->parameters[i].step));
SendMessage(control->trackbar.hwnd, TBM_SETPOS, (WPARAM)TRUE,
(LPARAM)((shader->parameters[i].current - shader->parameters[i].minimum) / shader->parameters[i].step));
break;
} }
} }
} }
static void shader_dlg_params_clear(void) static void shader_dlg_params_clear(void)
{ {
int i; unsigned i;
for (i = 0; i < GFX_MAX_PARAMETERS; i++) for (i = 0; i < GFX_MAX_PARAMETERS; i++)
{ {
if (g_shader_dlg.controls[i].type == SHADER_PARAM_CTRL_NONE) shader_param_ctrl_t*control = &g_shader_dlg.controls[i];
if (control->type == SHADER_PARAM_CTRL_NONE)
break; break;
else if (g_shader_dlg.controls[i].type == SHADER_PARAM_CTRL_CHECKBOX)
DestroyWindow(g_shader_dlg.controls[i].checkbox.hwnd); switch (control->type)
else if (g_shader_dlg.controls[i].type == SHADER_PARAM_CTRL_TRACKBAR)
{ {
DestroyWindow(g_shader_dlg.controls[i].trackbar.label_title); case SHADER_PARAM_CTRL_CHECKBOX:
DestroyWindow(g_shader_dlg.controls[i].trackbar.label_val); DestroyWindow(control->checkbox.hwnd);
DestroyWindow(g_shader_dlg.controls[i].trackbar.hwnd); break;
case SHADER_PARAM_CTRL_TRACKBAR:
DestroyWindow(control->trackbar.label_title);
DestroyWindow(control->trackbar.label_val);
DestroyWindow(control->trackbar.hwnd);
break;
} }
g_shader_dlg.controls[i].type = SHADER_PARAM_CTRL_NONE; control->type = SHADER_PARAM_CTRL_NONE;
} }
} }
@ -191,31 +200,31 @@ void shader_dlg_params_reload(void)
if (!shader) if (!shader)
return; return;
if (shader->num_parameters > GFX_MAX_PARAMETERS) if (shader->num_parameters > GFX_MAX_PARAMETERS)
return; return;
hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT); hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
pos_y = g_shader_dlg.parameters_start_y; pos_y = g_shader_dlg.parameters_start_y;
pos_x = SHADER_DLG_CTRL_X; pos_x = SHADER_DLG_CTRL_X;
for (i = 0; i < (int)shader->num_parameters; i++) for (i = 0; i < (int)shader->num_parameters; i++)
{ {
shader_param_ctrl_t*control = &g_shader_dlg.controls[i];
if ((shader->parameters[i].minimum == 0.0) if ((shader->parameters[i].minimum == 0.0)
&& (shader->parameters[i].maximum == (shader->parameters[i].minimum + shader->parameters[i].step))) && (shader->parameters[i].maximum == (shader->parameters[i].minimum + shader->parameters[i].step)))
{ {
if ((pos_y + SHADER_DLG_CHECKBOX_HEIGHT + SHADER_DLG_CTRL_MARGIN + 20) > SHADER_DLG_MAX_HEIGHT) if ((pos_y + SHADER_DLG_CHECKBOX_HEIGHT + SHADER_DLG_CTRL_MARGIN + 20) > SHADER_DLG_MAX_HEIGHT)
{ {
pos_y = g_shader_dlg.parameters_start_y; pos_y = g_shader_dlg.parameters_start_y;
pos_x += SHADER_DLG_WIDTH; pos_x += SHADER_DLG_WIDTH;
} }
g_shader_dlg.controls[i].type = SHADER_PARAM_CTRL_CHECKBOX; control->type = SHADER_PARAM_CTRL_CHECKBOX;
g_shader_dlg.controls[i].checkbox.hwnd = CreateWindowEx(0, "BUTTON", shader->parameters[i].desc, control->checkbox.hwnd = CreateWindowEx(0, "BUTTON", shader->parameters[i].desc,
WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX, pos_x, pos_y, SHADER_DLG_CTRL_WIDTH, SHADER_DLG_CHECKBOX_HEIGHT, WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX, pos_x, pos_y, SHADER_DLG_CTRL_WIDTH, SHADER_DLG_CHECKBOX_HEIGHT,
g_shader_dlg.hwnd, (HMENU)(size_t)i, NULL, NULL); g_shader_dlg.hwnd, (HMENU)(size_t)i, NULL, NULL);
SendMessage(g_shader_dlg.controls[i].checkbox.hwnd, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0)); SendMessage(control->checkbox.hwnd, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0));
pos_y += SHADER_DLG_CHECKBOX_HEIGHT + SHADER_DLG_CTRL_MARGIN; pos_y += SHADER_DLG_CHECKBOX_HEIGHT + SHADER_DLG_CTRL_MARGIN;
} }
else else
@ -227,23 +236,23 @@ void shader_dlg_params_reload(void)
pos_x += SHADER_DLG_WIDTH; pos_x += SHADER_DLG_WIDTH;
} }
g_shader_dlg.controls[i].type = SHADER_PARAM_CTRL_TRACKBAR; control->type = SHADER_PARAM_CTRL_TRACKBAR;
g_shader_dlg.controls[i].trackbar.label_title = CreateWindowEx(0, "STATIC", shader->parameters[i].desc, control->trackbar.label_title = CreateWindowEx(0, "STATIC", shader->parameters[i].desc,
WS_CHILD | WS_VISIBLE | SS_LEFT, pos_x, pos_y, SHADER_DLG_CTRL_WIDTH, SHADER_DLG_LABEL_HEIGHT, g_shader_dlg.hwnd, WS_CHILD | WS_VISIBLE | SS_LEFT, pos_x, pos_y, SHADER_DLG_CTRL_WIDTH, SHADER_DLG_LABEL_HEIGHT, g_shader_dlg.hwnd,
(HMENU)(size_t)i, NULL, NULL); (HMENU)(size_t)i, NULL, NULL);
SendMessage(g_shader_dlg.controls[i].trackbar.label_title, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0)); SendMessage(control->trackbar.label_title, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0));
pos_y += SHADER_DLG_LABEL_HEIGHT; pos_y += SHADER_DLG_LABEL_HEIGHT;
g_shader_dlg.controls[i].trackbar.hwnd = CreateWindowEx(0, TRACKBAR_CLASS, "", control->trackbar.hwnd = CreateWindowEx(0, TRACKBAR_CLASS, "",
WS_CHILD | WS_VISIBLE | TBS_HORZ | TBS_NOTICKS, pos_x + SHADER_DLG_TRACKBAR_LABEL_WIDTH, pos_y, WS_CHILD | WS_VISIBLE | TBS_HORZ | TBS_NOTICKS, pos_x + SHADER_DLG_TRACKBAR_LABEL_WIDTH, pos_y,
SHADER_DLG_TRACKBAR_WIDTH, SHADER_DLG_TRACKBAR_HEIGHT, g_shader_dlg.hwnd, (HMENU)(size_t)i, NULL, NULL); SHADER_DLG_TRACKBAR_WIDTH, SHADER_DLG_TRACKBAR_HEIGHT, g_shader_dlg.hwnd, (HMENU)(size_t)i, NULL, NULL);
g_shader_dlg.controls[i].trackbar.label_val = CreateWindowEx(0, "STATIC", "", WS_CHILD | WS_VISIBLE | SS_LEFT, pos_x, control->trackbar.label_val = CreateWindowEx(0, "STATIC", "", WS_CHILD | WS_VISIBLE | SS_LEFT, pos_x,
pos_y, SHADER_DLG_TRACKBAR_LABEL_WIDTH, SHADER_DLG_LABEL_HEIGHT, g_shader_dlg.hwnd, (HMENU)(size_t)i, NULL, NULL); pos_y, SHADER_DLG_TRACKBAR_LABEL_WIDTH, SHADER_DLG_LABEL_HEIGHT, g_shader_dlg.hwnd, (HMENU)(size_t)i, NULL, NULL);
SendMessage(g_shader_dlg.controls[i].trackbar.label_val, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0)); SendMessage(control->trackbar.label_val, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0));
SendMessage(g_shader_dlg.controls[i].trackbar.hwnd, TBM_SETBUDDY, (WPARAM)TRUE, SendMessage(control->trackbar.hwnd, TBM_SETBUDDY, (WPARAM)TRUE,
(LPARAM)g_shader_dlg.controls[i].trackbar.label_val); (LPARAM)control->trackbar.label_val);
pos_y += SHADER_DLG_TRACKBAR_HEIGHT + SHADER_DLG_CTRL_MARGIN; pos_y += SHADER_DLG_TRACKBAR_HEIGHT + SHADER_DLG_CTRL_MARGIN;