virtual void OnClick(Point pt, int widget, int click_count) { switch (widget) { case WIDGET_NEWSOPT_DROP_SUMMARY: // Dropdown menu for all settings ShowDropDownMenu(this, this->message_opt, this->state, WIDGET_NEWSOPT_DROP_SUMMARY, 0, 0); break; case WIDGET_NEWSOPT_SOUNDTICKER: // Change ticker sound on/off _news_ticker_sound ^= 1; this->InvalidateData(); break; default: { // Clicked on the [<] .. [>] widgets if (widget >= WIDGET_NEWSOPT_START_OPTION && widget < WIDGET_NEWSOPT_END_OPTION) { int wid = widget - WIDGET_NEWSOPT_START_OPTION; int element = wid / MOS_WIDG_PER_SETTING; byte val = (_news_type_data[element].display + ((wid % MOS_WIDG_PER_SETTING) ? 1 : -1)) % 3; this->SetMessageButtonStates(val, element); _news_type_data[element].display = (NewsDisplay)val; this->SetDirty(); } break; } } }
void GUIComboBox::OnPress() { SetState(GUIWidget::Touched); ShowDropDownMenu(); m_isShowDropDownMenu = true; }