void mmAttachmentDialog::OnItemRightClick(wxDataViewEvent& event) { wxCommandEvent evt(wxEVT_COMMAND_MENU_SELECTED, wxID_ANY) ; evt.SetEventObject( this ); Model_Attachment::Data* attachment = Model_Attachment::instance().get(m_attachment_id); wxMenu* mainMenu = new wxMenu; if (attachment) mainMenu->SetTitle(attachment->DESCRIPTION); mainMenu->Append(new wxMenuItem(mainMenu, MENU_NEW_ATTACHMENT, _("&Add "))); mainMenu->AppendSeparator(); mainMenu->Append(new wxMenuItem(mainMenu, MENU_OPEN_ATTACHMENT, _("&Open "))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_EDIT_ATTACHMENT, _("&Edit "))); if (!attachment) mainMenu->Enable(MENU_EDIT_ATTACHMENT, false); mainMenu->Append(new wxMenuItem(mainMenu, MENU_DELETE_ATTACHMENT, _("&Remove "))); //Disable buttons wxString AttachmentsFolder = mmex::getPathAttachment(mmAttachmentManage::InfotablePathSetting()); if (AttachmentsFolder == wxEmptyString || !wxDirExists(AttachmentsFolder)) mainMenu->Enable(MENU_NEW_ATTACHMENT, false); if (!attachment) { mainMenu->Enable(MENU_OPEN_ATTACHMENT, false); mainMenu->Enable(MENU_EDIT_ATTACHMENT, false); mainMenu->Enable(MENU_DELETE_ATTACHMENT, false); } PopupMenu(mainMenu); delete mainMenu; event.Skip(); }
void mmPayeeDialog::OnItemRightClick(wxDataViewEvent& event) { wxCommandEvent evt(wxEVT_COMMAND_MENU_SELECTED, wxID_ANY) ; evt.SetEventObject(this); Model_Payee::Data* payee = Model_Payee::instance().get(m_payee_id); wxMenu* mainMenu = new wxMenu; if (payee) mainMenu->SetTitle(payee->PAYEENAME); mainMenu->Append(new wxMenuItem(mainMenu, MENU_DEFINE_CATEGORY, _("Define Default Category"))); if (!payee) mainMenu->Enable(MENU_DEFINE_CATEGORY, false); mainMenu->AppendSeparator(); mainMenu->Append(new wxMenuItem(mainMenu, MENU_NEW_PAYEE, _("&Add "))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_EDIT_PAYEE, _("&Edit "))); if (!payee) mainMenu->Enable(MENU_EDIT_PAYEE, false); mainMenu->Append(new wxMenuItem(mainMenu, MENU_DELETE_PAYEE, _("&Remove "))); if (!payee || Model_Payee::is_used(m_payee_id)) mainMenu->Enable(MENU_DELETE_PAYEE, false); mainMenu->AppendSeparator(); mainMenu->Append(new wxMenuItem(mainMenu, MENU_ORGANIZE_ATTACHMENTS, _("&Organize Attachments"))); if (!payee) mainMenu->Enable(MENU_ORGANIZE_ATTACHMENTS, false); mainMenu->AppendSeparator(); mainMenu->Append(new wxMenuItem(mainMenu, MENU_RELOCATE_PAYEE, _("Relocate Payee"))); //SetToolTip(_("Change all transactions using one Payee to another Payee")); if (!payee) mainMenu->Enable(MENU_RELOCATE_PAYEE, false); PopupMenu(mainMenu); delete mainMenu; event.Skip(); }
void mmCustomFieldListDialog::OnItemRightClick(wxDataViewEvent& event) { wxCommandEvent evt(wxEVT_COMMAND_MENU_SELECTED, wxID_ANY) ; evt.SetEventObject( this ); Model_CustomField::Data *field = Model_CustomField::instance().get(m_field_id); wxMenu* mainMenu = new wxMenu; if (field) mainMenu->SetTitle(field->DESCRIPTION); mainMenu->Append(new wxMenuItem(mainMenu, MENU_NEW_FIELD, _("&Add "))); mainMenu->AppendSeparator(); mainMenu->Append(new wxMenuItem(mainMenu, MENU_EDIT_FIELD, _("&Edit "))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_DELETE_FIELD, _("&Remove "))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_UPDATE_FIELD, _("&Massive content update "))); if (!field) { mainMenu->Enable(MENU_EDIT_FIELD, false); mainMenu->Enable(MENU_DELETE_FIELD, false); mainMenu->Enable(MENU_UPDATE_FIELD, false); } PopupMenu(mainMenu); delete mainMenu; event.Skip(); }
// Called when a cell is left-clicked void DIALOG_BOM_EDITOR::OnTableItemActivated( wxDataViewEvent& event ) { /* TODO * - Focus on component selected in SCH_FRAME */ event.Skip(); }
void ImplementParentVirtualFunctionsDialog::OnValueChanged(wxDataViewEvent& event) { event.Skip(); clFunctionImplDetails *cd = dynamic_cast<clFunctionImplDetails*>( m_dataviewModel->GetClientObject(event.GetItem()) ); wxVector<wxVariant> cols = m_dataviewModel->GetItemColumnsData(event.GetItem()); cd->SetVisibility( cols.at(2).GetString() ); cd->SetPrependVirtualKeyword( cols.at(3).GetBool() ); cd->SetSelected( cols.at(0).GetBool() ); cd->SetDoxygen( cols.at(4).GetBool() ); }
// Called when a cell is right-clicked void DIALOG_BOM_EDITOR::OnTableItemContextMenu( wxDataViewEvent& event ) { /* TODO * - Display contect menu * - Option to revert local changes if changes have been made * - Option to select footprint if FOOTPRINT column selected */ event.Skip(); }
void MyFrame::OnHeaderClick( wxDataViewEvent &event ) { // we need to skip the event to let the default behaviour of sorting by // this column when it is clicked to take place event.Skip(); int pos = m_ctrl[0]->GetColumnPosition( event.GetDataViewColumn() ); wxLogMessage( "wxEVT_DATAVIEW_COLUMN_HEADER_CLICK, Column position: %d", pos ); wxLogMessage( "Column width: %d", event.GetDataViewColumn()->GetWidth() ); }
void TableSettings::OnKeyChanged(wxDataViewEvent& event) { Constraint *key = reinterpret_cast<Constraint*>( m_dvKeys->GetItemData( event.GetItem() ) ); if( key ) { wxVariant val; event.GetModel()->GetValue( val, event.GetItem(), event.GetColumn() ); if( ! val.IsNull() ) { key->SetName( val.GetString() ); } } event.Skip(); }
void wxTreeListCtrl::SendItemEvent(wxEventType evt, wxDataViewEvent& eventDV) { wxTreeListEvent eventTL(evt, this, m_model->FromDVI(eventDV.GetItem())); if ( !ProcessWindowEvent(eventTL) ) { eventDV.Skip(); return; } if ( !eventTL.IsAllowed() ) { eventDV.Veto(); } }
void OpenWindowsPanel::OnTabActivated(wxDataViewEvent& event) { event.Skip(); CHECK_WORKSPACE_CLOSING(); wxDataViewItem item = event.GetItem(); CHECK_ITEM_RET(item); TabClientData* data = reinterpret_cast<TabClientData*>(m_dvListCtrl->GetItemData(item)); if(data->IsFile()) { m_mgr->OpenFile(data->tab.filename.GetFullPath()); } else { m_mgr->SelectPage(m_mgr->FindPage(data->tab.text)); } }
void ImportFilesDialogNew::OnItemExpanding(wxDataViewEvent& event) { event.Skip(); wxDataViewItemArray children; if ( m_dataviewModel->GetChildren(event.GetItem(), children) ) { wxDataViewItem child = children.Item(0); ImportFilesDlgData *cd = dynamic_cast<ImportFilesDlgData*>(m_dataviewModel->GetClientObject(child)); if ( cd && cd->IsDummy() ) { cd = dynamic_cast<ImportFilesDlgData*>(m_dataviewModel->GetClientObject(event.GetItem())); m_dataviewModel->DeleteItem( child ); wxDir dir ( cd->GetPath() ); DoBuildTree( event.GetItem(), dir, cd->IsChecked() ); } } }
void wxTreeListCtrl::SendColumnEvent(wxEventType evt, wxDataViewEvent& eventDV) { wxTreeListEvent eventTL(evt, this, wxTreeListItem()); eventTL.SetColumn(eventDV.GetColumn()); if ( !ProcessWindowEvent(eventTL) ) { eventDV.Skip(); return; } if ( !eventTL.IsAllowed() ) { eventDV.Veto(); } }
void CscopeTab::OnItemSelected(wxDataViewEvent& event) { // Expand parent items on selection CscopeTabClientData *data = dynamic_cast<CscopeTabClientData*>(m_dataviewModel->GetClientObject(event.GetItem())); if ( !data ) { // Parent item, expand it if ( m_dataview->IsExpanded( event.GetItem() ) ) { m_dataview->Collapse( event.GetItem() ); } else { m_dataview->Expand( event.GetItem() ); } } else { event.Skip(); } }
void ImportFilesDialogNew::OnValueChanged(wxDataViewEvent& event) { event.Skip(); wxVector<wxVariant> cols = m_dataviewModel->GetItemColumnsData(event.GetItem()); if ( cols.size() > 1 ) { bool isChecked = cols.at(1).GetBool(); ImportFilesDlgData *cd = reinterpret_cast<ImportFilesDlgData*>(m_dataviewModel->GetClientObject(event.GetItem())); if ( cd ) { cd->SetIsChecked( isChecked ); DoCheckChildren( event.GetItem(), isChecked ); } #ifdef __WXGTK__ Refresh(); #endif } }
void mmMainCurrencyDialog::OnItemRightClick(wxDataViewEvent& event) { wxCommandEvent ev(wxEVT_COMMAND_MENU_SELECTED, wxID_ANY) ; ev.SetEventObject( this ); wxMenu* mainMenu = new wxMenu; mainMenu->Append(new wxMenuItem(mainMenu, MENU_ITEM1, _("Set as Base Currency"))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_ITEM2, _("Online Update Currency Rate"))); int baseCurrencyID = Option::instance().BaseCurrency(); if (baseCurrencyID == currencyID_) mainMenu->Enable(MENU_ITEM1, false); PopupMenu(mainMenu); delete mainMenu; event.Skip(); }
void mmWebAppDialog::OnItemRightClick(wxDataViewEvent& event) { wxDataViewItemArray Selected; webtranListBox_->GetSelections(Selected); wxCommandEvent evt(wxEVT_COMMAND_MENU_SELECTED, wxID_ANY); evt.SetEventObject(this); wxMenu* mainMenu = new wxMenu; mainMenu->Append(new wxMenuItem(mainMenu, MENU_OPEN_ATTACHMENT, _("Open Attachment"))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_IMPORT_WEBTRAN, _("Import"))); mainMenu->Append(new wxMenuItem(mainMenu, MENU_DELETE_WEBTRAN, _("Delete"))); if (Selected.size() != 1) mainMenu->Enable(MENU_OPEN_ATTACHMENT, false); PopupMenu(mainMenu); delete mainMenu; event.Skip(); }
void OpenWindowsPanel::OnTabSelected(wxDataViewEvent& event) { event.Skip(); CHECK_WORKSPACE_CLOSING(); if(::wxGetKeyState(WXK_CONTROL)) { // multiple selection in progress return; } wxDataViewItem item = event.GetItem(); CHECK_ITEM_RET(item); TabClientData* data = reinterpret_cast<TabClientData*>(m_dvListCtrl->GetItemData(item)); if(data->IsFile()) { m_mgr->OpenFile(data->tab.filename.GetFullPath()); } else { wxWindow* page = m_mgr->FindPage(data->tab.text); if(page) { m_mgr->SelectPage(page); } } }
void LocalsView::OnLocalExpanding(wxDataViewEvent& event) { event.Skip(); CHECK_ITEM_RET( event.GetItem() ); wxDataViewItem item = event.GetItem(); wxDataViewItemArray children; if ( m_dataviewModel->GetChildren( item , children ) && children.GetCount() == 1 ) { wxDataViewItem child = children.Item(0); wxVariant v; m_dataviewModel->GetValue(v, child, 0); if ( v.GetString() == "<dummy>" ) { // a dummy node has been found // Delete this node and request from XDebug to expand it m_dataviewModel->SetValue( wxString("Loading..."), child, 0 ); wxString propertyName = DoGetItemClientData( event.GetItem() ); XDebugManager::Get().SendGetProperty( propertyName ); m_waitingExpand.insert( std::make_pair(propertyName, item) ); } } }
/* ActionSpecialPanel::onSpecialSelectionChanged * Called when the action special selection is changed *******************************************************************/ void ActionSpecialPanel::onSpecialSelectionChanged(wxDataViewEvent& e) { if ((theGameConfiguration->isBoom() && rb_generalised->GetValue())) { e.Skip(); return; } // Set special # text box text_special->SetValue(S_FMT("%d", selectedSpecial())); if (panel_args) { argspec_t args = theGameConfiguration->actionSpecial(selectedSpecial())->getArgspec(); // Save and restore the current arg values, since setup() deletes and // recreates the controls int arg_values[5]; for (unsigned a = 0; a < 5; a++) arg_values[a] = panel_args->getArgValue(a); panel_args->setup(&args); panel_args->setValues(arg_values); } }
void PlaybackTab::OnSelect(wxDataViewEvent& event) { const StoredGame* storedGame = m_replay_dataview->GetSelectedItem(); if (storedGame == nullptr) { Deselect(); } else { try { m_watch_btn->Enable(true); m_delete_btn->Enable(true); //this might seem a bit backwards, but it's currently the only way that doesn't involve casting away constness int m_sel_replay_id = storedGame->id; StoredGame& rep = replaylist().GetPlaybackById(m_sel_replay_id); m_players_text->SetLabel(wxEmptyString); m_map_text->SetLabel(TowxString(rep.battle.GetHostMapName())); m_mod_text->SetLabel(TowxString(rep.battle.GetHostGameName())); m_minimap->SetBattle(&(rep.battle)); m_minimap->UpdateMinimap(); m_players->Clear(); m_players->SetBattle((IBattle*)&rep.battle); for (size_t i = 0; i < rep.battle.GetNumUsers(); ++i) { try { User& usr = rep.battle.GetUser(i); m_players->AddUser(usr); } catch (...) { } } } catch (...) { Deselect(); } event.Skip(); } }
void DataModelListCtrl::OnDoubleClick(wxDataViewEvent& event) { EditItem(event.GetItem(), event.GetDataViewColumn()); event.Skip(); }
void NotebookNavigationDlg::OnItemActivated(wxDataViewEvent& event) { event.Skip(); CL_DEBUG("NotebookNavigationDlg::OnItemActivated"); CloseDialog(); }
void TableSettings::OnColumnChanged(wxDataViewEvent& event) { Column *col = reinterpret_cast<Column*>(m_dvColumns->GetItemData( event.GetItem() ) ); if( col ) { wxVariant val; event.GetModel()->GetValue( val, event.GetItem(), event.GetColumn() ); if( ! val.IsNull() ) { switch( event.GetColumn() ) { case 0: { // rename local columns in keys SerializableList keys; GetConstraints( keys, col->GetName() ); for(SerializableList::iterator it = keys.begin(); it != keys.end(); ++it ) { Constraint *key = (Constraint*) *it; if( key->GetType() == Constraint::primaryKey ) key->SetName( wxT("PK_") + val.GetString() ); key->SetLocalColumn( val.GetString() ); } // rename table column col->SetName( val.GetString() ); break; } case 1: { col->SetType( m_pDbAdapter->GetDbTypeByName( val.GetString() ) ); break; } case 2: { long s1, s2; s1 = s2 = 0; wxSscanf( val.GetString(), wxT("%ld,%ld"), &s1, &s2 ); IDbType *type = col->GetType(); if( type->HaveSize() ) type->SetSize( s1 ); else { m_infobar->ShowMessage( wxT("This data type doesn't support size definition."), wxICON_WARNING ); Refresh(); } if( type->HaveSize2() ) type->SetSize2( s1 ); else { m_infobar->ShowMessage( wxT("This data type doesn't support size definition."), wxICON_WARNING ); Refresh(); } break; } case 3: { IDbType *type = col->GetType(); if( type->HaveNotNull() ) type->SetNotNull( val.GetBool() ); else { m_infobar->ShowMessage( wxT("This data type doesn't support NOT NULL feature."), wxICON_WARNING ); Refresh(); } break; } case 4: { IDbType *type = col->GetType(); if( type->HaveAutoIncrement() ) type->SetAutoIncrement( val.GetBool() ); else { m_infobar->ShowMessage( wxT("This data type doesn't support AUTOINCREMENT feature."), wxICON_WARNING ); Refresh(); } break; } case 5: { Constraint *key = GetConstraint( Constraint::primaryKey, col->GetName() ); if( key ) { // remove primary key if exists m_lstKeys.DeleteObject( key ); delete key; } else { // create new primary key key = new Constraint( wxT("PK_") + col->GetName(), col->GetName(), Constraint::primaryKey, Constraint::noAction, Constraint::noAction ); m_lstKeys.Append( key ); } break; } } } } event.Skip(); UpdateView(); }
void CscopeTab::OnItemActivated(wxDataViewEvent& event) { event.Skip(); DoItemActivated( event.GetItem() ); }
void OpenResourceDialog::OnEntrySelected(wxDataViewEvent& event) { event.Skip(); }
void DIALOG_LIB_EDIT_PIN_TABLE::OnColumnHeaderRightClicked( wxDataViewEvent& event ) { m_Model->SetGroupingColumn( event.GetDataViewColumn()->GetModelColumn() ); event.Skip(); }