GWEN_CONTROL_CONSTRUCTOR(Menu, ScrollControl) { SetBounds(0, 0, 10, 10); SetDeleteOnClose(false); SetIconMarginDisabled(false); SetPadding(Padding(0, 0, 0, 0)); _SetScrollBarHidden(true); }
void GameGui::HandleEvent(ALLEGRO_EVENT& ev, GameState& state, Point view) { if (m_gwenInput.get()->ProcessMessage(ev)) return; GuiRequest req = m_iHandler.HandleEvent(ev, state, view); // currently there's only one type of event that when processed affects // the GUI, clicking on a building to open a window switch (req.type) { case GuiRequestType::None: break; case GuiRequestType::OpenBuildingWindow: auto window = req.ptr.building.DisplayGUI(m_canvas.get()); window->onWindowClosed.Add(this, &GameGui::CloseWindowCallback); window->SetDeleteOnClose(true); OpenWindow(window); break; } }