void ColourPicker::onSelect(Widget *source) { WidgetWindow::getInstance()->removeFloatingWidget(m_dropDownPanel); ColourButton *btn = static_cast<ColourButton*>(source); int i=0; for ( ; i < GameConstants::maxColours; ++i) { if (m_colourButtons[i] == btn) { break; } } assert(i < GameConstants::maxColours); m_selectedIndex = i; setColour(i); ColourChanged(this); }
BOOL GuidesPropertiesTab::HandleMsg(DialogMsg* Msg) { TRACEUSER( "Neville", _T("GuidesPropertiesTab::HandleMsg\n")); ERROR2IF(Msg == NULL,FALSE,"GuidesPropertiesTab::Message null message received"); ERROR2IF(pPropertiesDlg == NULL,FALSE,"GuidesPropertiesTab::HandleMsg called with no dialog pointer"); BOOL ok = pPropertiesDlg->TalkToPage(GetPageID()); if (!ok) return TRUE; // no page present = handled message switch(Msg->DlgMsg) { case DIM_CREATE: // Initialise controls GreyStatus = FALSE; // we are ungreyed by default ok = InitSection(); if (!ok) InformError(); break; case DIM_LFT_BN_CLICKED: //LayerPropertyTabs::SetApplyNowState(TRUE); if (FALSE) {} else if (Msg->GadgetID == _R(IDC_GUIDETAB_HORZ)) { if (GuideType != GUIDELINE_HORZ) { GuideType = GUIDELINE_HORZ; ShowDetails(); } } else if (Msg->GadgetID == _R(IDC_GUIDETAB_VERT)) { if (GuideType != GUIDELINE_VERT) { GuideType = GUIDELINE_VERT; ShowDetails(); } } else if (Msg->GadgetID == _R(IDC_GUIDETAB_PROPERTIES)) { PropertiesClicked(); ShowDetails(); } else if (Msg->GadgetID == _R(IDC_GUIDETAB_NEW)) { NewClicked(); ShowDetails(); } else if (Msg->GadgetID == _R(IDC_GUIDETAB_DELETE)) { DeleteClicked(); ShowDetails(); } break; case DIM_SELECTION_CHANGED: case DIM_TEXT_CHANGED: //LayerPropertyTabs::SetApplyNowState(TRUE); if (FALSE) {} else if (Msg->GadgetID == _R(IDC_GUIDETAB_GUIDELINELIST)) { ChangeControlStatus(!GreyStatus); } else if (Msg->GadgetID == _R(IDC_GUIDETAB_COLOURLIST)) { ColourChanged(pPropertiesDlg->GetSelectedValueIndex(Msg->GadgetID)); ShowDetails(); } break; default: break; } return TRUE; }