/** * Revert all component data back to the original values. * The table view is updated accordingly */ void BOM_TABLE_MODEL::RevertFieldChanges() { for( auto& group : Groups ) { if( !group ) continue; bool changed = false; for( auto& component : group->Components ) { if( !component ) continue; if( component->HasChanged() ) { component->RevertFieldChanges(); ItemChanged( RowToItem( &*component ) ); changed = true; } } // Update the group if any components changed if( changed ) { ItemChanged( RowToItem( &*group ) ); } } }
void wxTreeListModel::ToggleItem(wxDataViewItem dvi) { Node* const item = FromDVI(dvi); wxCHECK_RET( item, "Invalid item" ); const wxCheckBoxState stateOld = item->m_checkedState; // If the 3rd state is user-settable then the cycle is // unchecked->checked->undetermined. switch ( stateOld ) { case wxCHK_CHECKED: item->m_checkedState = m_treelist->HasFlag(wxTL_USER_3STATE) ? wxCHK_UNDETERMINED : wxCHK_UNCHECKED; break; case wxCHK_UNDETERMINED: // Whether 3rd state is user-settable or not, the next state is // unchecked. item->m_checkedState = wxCHK_UNCHECKED; break; case wxCHK_UNCHECKED: item->m_checkedState = wxCHK_CHECKED; break; } ItemChanged(ToDVI(item)); m_treelist->OnItemToggled(item, stateOld); }
void OptionsMenu::HandleEvent(sf::Event &Event) { UIPage::HandleEvent(Event); // Arrow keys... if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Up)) { if (Current <= 0) Current = Options.size(); Current--; return; } if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Down)) { Current++; if (Current >= Options.size()) Current = 0; return; } // Handle mouse movement if ((Event.Type == sf::Event::MouseMoved)) { float middle = context->window->GetWidth() / 2; if ((Event.MouseMove.X < middle - 200) || (Event.MouseMove.X > middle + 200)) return; float y = 150; for (int i = 0; i < Options.size(); i++) { y += 60; if ((Event.MouseMove.Y > y - 20) && (Event.MouseMove.Y < y + 20)) { Current = i; return; } } return; } // Handle click (assume the mouse has moved recently. I expect a bug report // on this eventually) if ((Event.Type == sf::Event::MouseButtonReleased) && (Event.MouseButton.Button == sf::Mouse::Left)) return ItemChanged(Options[Current]); // Handle enter if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Return)) return ItemChanged(Options[Current]); }
void TreeListModel::UpdateItem(const wxDataViewItem& item, const wxVector<wxVariant>& data) { TreeListModel_Item* node = reinterpret_cast<TreeListModel_Item*>(item.GetID()); if ( node ) { node->SetData( data ); ItemChanged( item ); } }
void MemCheckDVCErrorsModel::UpdateItem(const wxDataViewItem& item, const wxVector<wxVariant>& data) { MemCheckDVCErrorsModel_Item* node = reinterpret_cast<MemCheckDVCErrorsModel_Item*>(item.GetID()); if ( node ) { node->SetData( data ); ItemChanged( item ); } }
void wxTreeListModel::CheckItem(Node* item, wxCheckBoxState checkedState) { wxCHECK_RET( item, "Invalid item" ); item->m_checkedState = checkedState; ItemChanged(ToDVI(item)); }
void CScoptViewResultsModel::UpdateItem(const wxDataViewItem& item, const wxVector<wxVariant>& data) { CScoptViewResultsModel_Item* node = reinterpret_cast<CScoptViewResultsModel_Item*>(item.GetID()); if ( node ) { node->SetData( data ); ItemChanged( item ); } }