void MyTreeCtrl::OnItemRClick(wxTreeEvent& event) { wxTreeItemId itemId = event.GetItem(); MyTreeItemData *item = itemId.IsOk() ? (MyTreeItemData *)GetItemData(itemId) : NULL; wxLogMessage(wxT("Item \"%s\" right clicked"), item ? item->GetDesc() : _T("")); event.Skip(); }
void frmMain::OnCollapse(wxTreeEvent &event) { #ifdef WIN32 // This is weird stuff, but somewhere comes a collapse after we have done // connecting the server and expanding the tree. // Possibly not necessary if (event.GetItem() == denyCollapseItem) event.Veto(); #endif denyCollapseItem = wxTreeItemId(); }
void luProjTree::OnItemMenu(wxTreeEvent& event) { wxTreeItemId itemId = event.GetItem(); wxPoint clientpt = event.GetPoint(); wxPoint screenpt = ClientToScreen(clientpt); showMenu(itemId, clientpt); event.Skip(); }
// item collapse event handler void fileDissectTreeCtrl::OnItemCollapsing(wxTreeEvent& event) { wxTreeItemId id = event.GetItem(); // prevent the root from collapsing if (id == GetRootItem()) { event.Veto(); return; } }
void ModelListTree::OnItemMenu(wxTreeEvent& event) { ModelTreeItemData* itemData = (ModelTreeItemData*)GetItemData(event.GetItem()); Model* model = itemData->GetModel(); wxPoint pt = event.GetPoint(); wxMenu menu; menu.Append(ID_MODEL_PANEL_ITEM_MENU_ADD_TO_SCENE, wxT("&add to scene")); PopupMenu(&menu, pt); }
void UserRulesEditorFrame::OnSelectModInMasterlist(wxTreeEvent& event) { //Need to find item in masterlist. :( Why can't tree lists store index number? string itemStr = MasterlistModsList->GetItemText(event.GetItem()).ToUTF8(); size_t pos = game.masterlist.FindItem(itemStr, MOD); if (pos != game.masterlist.Items().size()) { string messagesOut = ""; vector<Message> messages = game.masterlist.ItemAt(pos).Messages(); for (vector<Message>::iterator messageIter = messages.begin(); messageIter != messages.end(); ++messageIter) messagesOut += messageIter->KeyToString() + ": " + messageIter->Data() + "\n\n"; ModMessagesBox->SetValue(wxString(messagesOut.substr(0,messagesOut.length()-2).c_str(), wxConvUTF8)); } }
void PanelObjectList::OnTreeBeginLabelEdit(wxTreeEvent& event) { wxTreeItemId id = event.GetItem(); TreeItemDataGenericObjectInfo* pData = (TreeItemDataGenericObjectInfo*)m_pTree_Objects->GetItemData( id ); // don't allow edits if there's no callback. if( pData == 0 || pData->m_pLabelEditFunction == 0 ) { // cancel the edit event.Veto(); } }
void CategoryTree::onItemCollapsing( wxTreeEvent& p_event ) { auto id = p_event.GetItem( ); auto* itemData = static_cast<const CategoryTreeItem*>( this->GetItemData( id ) ); // Skip if this is not a category if ( !itemData || itemData->dataType( ) != CategoryTreeItem::DT_Category ) { return; } // Set icon to the closed folder this->SetItemImage( id, CategoryTreeImageList::IT_ClosedFolder ); }
void SamplesTreeCtrl::onCollapsing( wxTreeEvent &event ) { wxTreeItemId item = event.GetItem(); wxTreeItemData *data = GetItemData( item ); if ( !data ) // Prevent collapsing of speakers { event.Veto(); return; } }
void luProjTree::OnItemActivated(wxTreeEvent& event) { wxTreeItemId itemId = event.GetItem(); ItemData* item = (ItemData*)GetItemData(itemId); luMainFrame* frame = getLuMainFrame(); if (!item || !frame) return; int data = item->GetData(); wxString name = item->GetName(); }
void wxGenericDirCtrl::OnExpandItem(wxTreeEvent &event) { wxTreeItemId parentId = event.GetItem(); // VS: this is needed because the event handler is called from wxTreeCtrl // ctor when wxTR_HIDE_ROOT was specified if (!m_rootId.IsOk()) m_rootId = m_treeCtrl->GetRootItem(); ExpandDir(parentId); }
void ScenePanel::SceneTooltipSet(wxTreeEvent& evt) { wxTreeItemId item = evt.GetItem(); SceneTreeItemData *sceneData = dynamic_cast<SceneTreeItemData*>(mSceneTree->GetItemData(item)); if (sceneData != NULL) { evt.SetToolTip(wxString::Format(wxT("%d meshes"), sceneData->GetData()->mNumMeshes)); } return; }
//////////////////////////////////////////////////////////////////////////////// // This handler will display a popup menu for the item at the mouse position //////////////////////////////////////////////////////////////////////////////// void frmMain::OnSelRightClick(wxTreeEvent& event) { wxTreeItemId item = event.GetItem(); if (item != browser->GetSelection()) { browser->SelectItem(item); currentObject = browser->GetObject(item); } if (currentObject) doPopup(browser, event.GetPoint(), currentObject); }
void YardEmployee::OnChange(wxTreeEvent& event) { m_loading = true; empItemData * data = static_cast<empItemData *>(m_tree->GetItemData(event.GetItem())); if (!data) return; try { m_emp = wxGetApp().DB().EmployeeGet(data->GetID()); } catch (YardDBException& e) { wxLogDebug(wxT("Error (employee not loaded): %s, %s"),e.what(), e.GetSQL().c_str()); return; } if (m_emp.GetPicLocal() != "") { wxImage pic(m_emp.GetPicLocal().c_str()); if (pic.Ok()) m_pic->SetBitmap(pic); else wxLogDebug(wxT("Bad image data (pic).")); } else m_pic->SetBitmap(wxImage("res/ys_employee_128x128.png")); if (m_emp.GetSigLocal() != "") { wxImage sig(m_emp.GetSigLocal().c_str()); if (sig.Ok()) m_sig->SetBitmap(sig); else wxLogDebug(wxT("Bad image data (sig).")); } else m_sig->SetBitmap(wxNullBitmap); m_first->SetValue(m_emp.GetFirst().c_str()); m_middle->SetValue(m_emp.GetMiddle().c_str()); m_last->SetValue(m_emp.GetLast().c_str()); m_address->SetValue(m_emp.GetAddress().c_str()); m_id->SetValue(m_emp.GetIdS().c_str()); m_taxid->SetValue(m_emp.GetTaxIdS().c_str()); m_phone->SetValue(m_emp.GetPhone().c_str()); wxString pos; pos.Printf(wxT("Title: %s"), m_emp.GetACL().c_str()); m_position->SetLabel(pos); pos.Printf(wxT("Hire date: %s"), m_emp.GetSince().c_str()); m_hire->SetLabel(pos); m_loading = false; }
void WorkspacePanel::OnSelectionChanged(wxTreeEvent& event) { SelectionList list; wxTreeItemId id = event.GetItem(); if(isProject(id)) list.push_back(getProject(id)); else if(isMaterial(id)) list.push_back(getMaterial(id)); else if(isTechnique(id)) list.push_back(getTechnique(id)); else if(isPass(id)) list.push_back(getPass(id)); // else its the workspace so just leave the list empty as if nothing were selected SelectionService::getSingletonPtr()->setSelection(list); }
void P3DPlantModelTreeCtrl::OnSelectionChanged (wxTreeEvent &event) { P3DBranchModel *BranchModel; #if defined(__WXMSW__) { SetItemBold(event.GetOldItem(),false); SetItemBold(event.GetItem(),true); } #endif if (!event.GetItem().IsOk()) { return; } BranchModel = ((P3DPlantModelTreeCtrlItemData*)(GetItemData(event.GetItem())))->GetBranchModel(); BranchPanel->SwitchToBranch(BranchModel); }
void SamplesTreeCtrl::onSelectionChanging( wxTreeEvent &event ) { SamplesTreeData *data = (SamplesTreeData *)GetItemData(event.GetItem() ); if ( data != NULL ) smp::sampleManager->selectSample( data->m_sample ); else { wxTreeItemIdValue cookie; wxTreeItemId firstSpeech = GetFirstChild( event.GetItem(), cookie ); if ( firstSpeech.IsOk() ) { event.Veto(); data = (SamplesTreeData *)GetItemData( firstSpeech ); smp::sampleManager->selectSample( data->m_sample ); } } }
void YardCustomer::OnChange(wxTreeEvent& event) { m_loading = true; custItemData * data = static_cast<custItemData *>(m_tree->GetItemData(event.GetItem())); if (!data) return; try { m_cust = wxGetApp().DB().CustomerGet(data->GetID()); } catch (YardDBException& e) { wxLogDebug(wxT("Error (customer not loaded): %s, %s"),e.what(), e.GetSQL().c_str()); return; } if (m_cust.GetPicLocal() != "") { wxImage pic(m_cust.GetPicLocal().c_str()); if (pic.Ok()) m_pic->SetBitmap(pic); else wxLogDebug(wxT("Bad image data (pic).")); } else m_pic->SetBitmap(wxImage("res/personal.png")); if (m_cust.GetSigLocal() != "") { wxImage sig(m_cust.GetSigLocal().c_str()); if (sig.Ok()) m_sig->SetBitmap(sig); else wxLogDebug(wxT("Bad image data (sig).")); } else m_sig->SetBitmap(wxNullBitmap); m_first->SetValue(m_cust.GetFirstName().c_str()); m_middle->SetValue(m_cust.GetMiddleName().c_str()); m_last->SetValue(m_cust.GetLastName().c_str()); m_address->SetValue(m_cust.GetAddress().c_str()); m_ccNum->SetValue(m_cust.GetCreditCardNumber().c_str()); m_ccName->SetValue(m_cust.GetCreditCardName().c_str()); m_ccExp->SetValue(m_cust.GetCreditCardExpiration().c_str()); m_phone->SetValue(m_cust.GetPhone().c_str()); wxString pos; pos.Printf(wxT("Customer Since: %s"), m_cust.GetSince().c_str()); m_custSince->SetLabel(pos); m_loading = false; }
void SkillObjectTree::OnBeginDrag(wxTreeEvent& event) { // need to explicitly allow drag if ( event.GetItem() != GetRootItem() ) { m_draggedItem = event.GetItem(); wxPoint clientpt = event.GetPoint(); wxPoint screenpt = ClientToScreen(clientpt); //wxLogMessage(wxT("OnBeginDrag: started dragging %s at screen coords (%i,%i)"), // GetItemText(m_draggedItem).c_str(), // screenpt.x, screenpt.y); event.Allow(); } else { //wxLogMessage(wxT("OnBeginDrag: this item can't be dragged.")); } }
void ProjectExplorerWindow::OnTreeItemActivated(wxTreeEvent& event) { // This is a bit hacky, but to prevent the control from expanding an item // when we activate it, we store the id and then veto the // expansion/contraction event. m_stopExpansion = event.GetItem(); // Keep processing the event. event.Skip(true); }
void SFTPTreeView::OnItemActivated(wxTreeEvent& event) { event.Skip(); MyClientData* cd = GetItemData(event.GetItem()); CHECK_PTR_RET(cd); if(cd->IsFolder()) { m_treeCtrl->Expand(event.GetItem()); } else { RemoteFileInfo remoteFile; remoteFile.SetAccount(m_account); remoteFile.SetRemoteFile(cd->GetFullPath()); SFTPThreadRequet* req = new SFTPThreadRequet(remoteFile); SFTPWorkerThread::Instance()->Add(req); m_plugin->AddRemoteFile(remoteFile); } }
void MyTreeCtrl::OnItemCollapsing(wxTreeEvent& event) { wxLogMessage(wxT("OnItemCollapsing")); // for testing, prevent the user from collapsing the first child folder wxTreeItemId itemId = event.GetItem(); if ( IsTestItem(itemId) ) { wxMessageBox(wxT("You can't collapse this item.")); event.Veto(); } }
//------------------------------------------------------------------------------ void OutputTree::OnBeginLabelEdit(wxTreeEvent &event) { GmatTreeItemData *selItem = (GmatTreeItemData *) GetItemData(event.GetItem()); //kind of redundant because OpenPage returns false for some //of the default folders if (GmatAppData::Instance()->GetMainFrame()->IsChildOpen(selItem)) { event.Veto(); } }
void MainFrame::OnTreeSelChanged(wxTreeEvent& evt) { SetCursor(*wxHOURGLASS_CURSOR); wxTreeItemId item_id = evt.GetItem(); wxString strText; while (item_id) { if (item_id != m_pTree->GetRootItem()) strText = wxT("/") + m_pTree->GetItemText(item_id) + strText; item_id = m_pTree->GetItemParent(item_id); } if (strText.IsEmpty()) strText = wxT("/"); m_strSelection = strText; SetKeyDescription(evt.GetItem()); SetCursor(*wxSTANDARD_CURSOR); }
void cssVFSFileDlg :: OnDirTreeExpandBranch( wxTreeEvent& event ) { wxTreeItemId curSelection = event.GetItem(); csString curDirPath = GetPathByTreeItem( curSelection ); if( dirtree->GetChildrenCount(curSelection, FALSE) == 0 ) { LoadVFSTreeBranch(curSelection, curDirPath.GetData()); } //Select the item that was expanded dirtree->SelectItem( curSelection ); }
void WatchWindow::OnBeginLabelEdit(wxTreeEvent& event) { if (GetItemParent(event.GetItem()) == m_root) { m_editing = true; } else { event.Veto(); } }
void CTimeBarFrame::OnTreeItemEndDrag(wxTreeEvent& event) { wxTreeItemId draggingItemId = m_pItemTreeCtrl->GetSelection(); wxTreeItemId targetItemId = event.GetItem(); BEATS_ASSERT(draggingItemId.IsOk() && targetItemId.IsOk()); if (draggingItemId != targetItemId && !IsParentOfItem(draggingItemId, targetItemId)) { m_pEndDragData = static_cast<CTimeBarFrameData*>(m_pItemTreeCtrl->GetItemData(event.GetItem())); wxCommandEvent dragEvent(TIMTBAR_DRAGITEMEND_EVENT, GetId()); dragEvent.SetEventObject(this); ProcessWindowEvent(dragEvent); } }
void SkillObjectTree::OnItemActivated(wxTreeEvent& event) { // show some info about this item wxTreeItemId itemId = event.GetItem(); SkillTreeItemData *item = (SkillTreeItemData *)GetItemData(itemId); if ( item != NULL ) { item->ShowInfo(this); } wxLogMessage(wxT("OnItemActivated")); }
void PL_EDITOR_FRAME::OnTreeRightClick( wxTreeEvent& event ) { m_treePagelayout->SelectCell( event.GetItem() ); wxMenu popMenu; AddNewItemsCommand( &popMenu ); popMenu.AppendSeparator(); AddMenuItem( &popMenu, ID_POPUP_DESIGN_TREE_ITEM_DELETE, _( "Delete" ), KiBitmap( delete_xpm ) ); PopupMenu( &popMenu ); }
void BulletTree::OnSelChanged(wxTreeEvent& event) { wxTreeItemId id = event.GetItem(); if ( !id ) { wxLogMessage(wxT("No item under mouse")); } BulletTreeItemData* pItemData = dynamic_cast<BulletTreeItemData*>(GetItemData(id)); if(pItemData) { BulletEditor* pEditor = dynamic_cast<BulletEditor*>(m_parent); EffectObjectPropertyEditor * pPropertyEditor = pEditor->GetParentFrame()->GetEffectObjectProperty(); if(pItemData->GetDesc() == "BulletFlow root item" || pItemData->GetDesc() == "BulletFlow property item") { pPropertyEditor->InitBulletFlowProperty(); mSelectBulletObject = NULL; } else if(pItemData->GetDesc() == "BulletOperator item" || pItemData->GetDesc() == "BulletOperator property item") { Fairy::BulletOperator* pOperator = (Fairy::BulletOperator*)pItemData->GetData(); pPropertyEditor->InitBulletOperator(pOperator); mSelectBulletObject = pOperator; } else if(pItemData->GetDesc() == "BulletEventSysetem item" ) { Fairy::BulletEventSystem* pEvent = (Fairy::BulletEventSystem*)pItemData->GetData(); mSelectBulletObject = pEvent; } else if(pItemData->GetDesc() == "BulletSystem item" ) { Fairy::BulletSystem* pSystem = (Fairy::BulletSystem*)pItemData->GetData(); mSelectBulletObject = pSystem; } else if(pItemData->GetDesc() == "BulletSystem Element" || pItemData->GetDesc() == "BulletSystem Element item") { Ogre::StringInterface* pElement = (Ogre::StringInterface*)pItemData->GetData(); pPropertyEditor->InitBulletSystemElement(pElement); mSelectBulletObject = pElement; } } event.Skip(); }