MCPcopy Create free account
hub / github.com/OpenRCT2/OpenRCT2 / widgetDraw

Function widgetDraw

src/openrct2-ui/interface/Widget.cpp:65–136  ·  view source on GitHub ↗

* * rct2: 0x006EB2A8 */

Source from the content-addressed store, hash-verified

63 * rct2: 0x006EB2A8
64 */
65 void widgetDraw(RenderTarget& rt, WindowBase& w, WidgetIndex widgetIndex)
66 {
67 const auto* widget = getWidgetByIndex(w, widgetIndex);
68 if (widget == nullptr)
69 {
70 LOG_ERROR("Tried drawing an out-of-bounds widget index!");
71 return;
72 }
73
74 switch (widget->type)
75 {
76 case WidgetType::frame:
77 WidgetFrameDraw(rt, w, widgetIndex);
78 break;
79 case WidgetType::resize:
80 WidgetResizeDraw(rt, w, widgetIndex);
81 break;
82 case WidgetType::imgBtn:
83 WidgetButtonDraw(rt, w, widgetIndex);
84 break;
85 case WidgetType::colourBtn:
86 case WidgetType::trnBtn:
87 case WidgetType::tab:
88 WidgetTabDraw(rt, w, widgetIndex);
89 break;
90 case WidgetType::flatBtn:
91 case WidgetType::hiddenButton:
92 WidgetFlatButtonDraw(rt, w, widgetIndex);
93 break;
94 case WidgetType::button:
95 case WidgetType::tableHeader:
96 WidgetTextButton(rt, w, widgetIndex);
97 break;
98 case WidgetType::labelCentred:
99 WidgetTextCentred(rt, w, widgetIndex);
100 break;
101 case WidgetType::label:
102 WidgetText(rt, w, widgetIndex);
103 break;
104 case WidgetType::spinner:
105 case WidgetType::dropdownMenu:
106 case WidgetType::viewport:
107 WidgetTextInset(rt, w, widgetIndex);
108 break;
109 case WidgetType::groupbox:
110 WidgetGroupboxDraw(rt, w, widgetIndex);
111 break;
112 case WidgetType::caption:
113 WidgetCaptionDraw(rt, w, widgetIndex);
114 break;
115 case WidgetType::closeBox:
116 WidgetCloseboxDraw(rt, w, widgetIndex);
117 break;
118 case WidgetType::scroll:
119 WidgetScrollDraw(rt, w, widgetIndex);
120 break;
121 case WidgetType::checkbox:
122 WidgetCheckboxDraw(rt, w, widgetIndex);

Callers 2

onDrawWidgetMethod · 0.85
onDrawMethod · 0.85

Calls 15

getWidgetByIndexFunction · 0.85
WidgetFrameDrawFunction · 0.85
WidgetResizeDrawFunction · 0.85
WidgetButtonDrawFunction · 0.85
WidgetTabDrawFunction · 0.85
WidgetFlatButtonDrawFunction · 0.85
WidgetTextButtonFunction · 0.85
WidgetTextCentredFunction · 0.85
WidgetTextFunction · 0.85
WidgetTextInsetFunction · 0.85
WidgetGroupboxDrawFunction · 0.85
WidgetCaptionDrawFunction · 0.85

Tested by

no test coverage detected