/** * * rct2: 0x006EB861 */ static void widget_flat_button_draw(rct_drawpixelinfo *dpi, rct_window *w, rct_widgetindex widgetIndex) { if (!widget_is_disabled(w, widgetIndex) && widget_is_highlighted(w, widgetIndex)) { widget_button_draw(dpi, w, widgetIndex); return; } // Get the widget rct_widget *widget = &w->widgets[widgetIndex]; // Resolve the absolute ltrb sint32 l = w->x + widget->left; sint32 t = w->y + widget->top; sint32 r = w->x + widget->right; sint32 b = w->y + widget->bottom; // Get the colour uint8 colour = w->colours[widget->colour]; // Check if the button is pressed down if (widget_is_pressed(w, widgetIndex) || widget_is_active_tool(w, widgetIndex)) { if (widget->image == -2) { // Draw border with no fill gfx_fill_rect_inset(dpi, l, t, r, b, colour, INSET_RECT_FLAG_BORDER_INSET | INSET_RECT_FLAG_FILL_NONE); return; } // Draw the border with fill gfx_fill_rect_inset(dpi, l, t, r, b, colour, INSET_RECT_FLAG_BORDER_INSET); } // Draw image widget_draw_image(dpi, w, widgetIndex); }
static void window_title_editor_update(rct_window *w) { w->frame_no++; if (w->frame_no >= window_title_editor_tab_animation_loops[w->selected_tab]) { w->frame_no = 0; } if (!widget_is_highlighted(w, WIDX_TITLE_EDITOR_LIST)) { _window_title_editor_highlighted_index = -1; widget_invalidate(w, WIDX_TITLE_EDITOR_LIST); } widget_invalidate(w, WIDX_TITLE_EDITOR_PRESETS_TAB + w->selected_tab); }
/** * * rct2: 0x006EB861 */ static void widget_flat_button_draw(rct_drawpixelinfo *dpi, rct_window *w, int widgetIndex) { rct_widget* widget; int l, t, r, b, press; uint32 image; uint8 colour; if (!widget_is_disabled(w, widgetIndex) && widget_is_highlighted(w, widgetIndex)) { widget_button_draw(dpi, w, widgetIndex); return; } // Get the widget widget = &w->widgets[widgetIndex]; // Resolve the absolute ltrb l = w->x + widget->left; t = w->y + widget->top; r = w->x + widget->right; b = w->y + widget->bottom; // Get the colour colour = w->colours[widget->colour]; // Check if the button is pressed down if (widget_is_pressed(w, widgetIndex) || widget_is_active_tool(w, widgetIndex)) { if (widget->image == -2) { // Draw border with no fill gfx_fill_rect_inset(dpi, l, t, r, b, colour, 0x20 | 0x10); return; } // Draw the border with fill gfx_fill_rect_inset(dpi, l, t, r, b, colour, 0x20); } // Draw image widget_draw_image(dpi, w, widgetIndex); }