KiCad PCB EDA Suite
Loading...
Searching...
No Matches
POLY_EDIT_COMMIT Class Reference
Inheritance diagram for POLY_EDIT_COMMIT:
COMMIT

Public Member Functions

void Push (const wxString &, int) override
 Execute the changes.
 
void Revert () override
 Revert the commit by restoring the modified items state.
 
void RevertToCheckpoint (int aCheckpoint) override
 
EDA_ITEM * ResolveItem (KIID &aID) override
 Search for an item in this commit that matches the provided KIID.
 
COMMIT & Add (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr)
 Add a new item to the model.
 
COMMIT & Added (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr)
 Notify observers that aItem has been added.
 
COMMIT & Remove (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr)
 Remove a new item from the model.
 
COMMIT & Removed (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr)
 Notify observers that aItem has been removed.
 
COMMIT & Modify (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr, RECURSE_MODE aRecurse=RECURSE_MODE::NO_RECURSE)
 Modify a given item in the model.
 
COMMIT & Modified (EDA_ITEM *aItem, EDA_ITEM *aCopy, BASE_SCREEN *aScreen=nullptr)
 Create an undo entry for an item that has been already modified.
 
virtual COMMIT & Stage (EDA_ITEM *aItem, CHANGE_TYPE aChangeType, BASE_SCREEN *aScreen=nullptr, RECURSE_MODE aRecurse=RECURSE_MODE::NO_RECURSE)
 Add a change of the item aItem of type aChangeType to the change list.
 
virtual COMMIT & Stage (std::vector< EDA_ITEM * > &container, CHANGE_TYPE aChangeType, BASE_SCREEN *aScreen=nullptr)
 
virtual COMMIT & Stage (const PICKED_ITEMS_LIST &aItems, UNDO_REDO aModFlag=UNDO_REDO::UNSPECIFIED, BASE_SCREEN *aScreen=nullptr)
 
void Unstage (EDA_ITEM *aItem, BASE_SCREEN *aScreen)
 
void Unmodify (EDA_ITEM *aItem, BASE_SCREEN *aScreen)
 
int Checkpoint ()
 
bool Empty () const
 
int GetStatus (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr)
 Returns status of an item.
 
EDA_ITEM * GetFirst () const
 
std::vector< std::pair< EDA_ITEM *, int > > StagedItems () const
 

Protected Member Functions

EDA_ITEM * undoLevelItem (EDA_ITEM *aItem) const override
 
EDA_ITEM * makeImage (EDA_ITEM *aItem) const override
 
void clear ()
 Should be called in Push() & Revert() methods.
 
void dropEntriesAfter (int aCheckpoint)
 
virtual void makeEntry (EDA_ITEM *aItem, CHANGE_TYPE aType, EDA_ITEM *aCopy=nullptr, BASE_SCREEN *aScreen=nullptr)
 
COMMIT_LINE * findEntry (EDA_ITEM *aItem, BASE_SCREEN *aScreen=nullptr)
 Search for an entry describing change for a particular item.
 
CHANGE_TYPE convert (UNDO_REDO aType) const
 
UNDO_REDO convert (CHANGE_TYPE aType) const
 

Protected Attributes

std::set< std::pair< EDA_ITEM *, BASE_SCREEN * > > m_addedItems
 
std::set< std::pair< EDA_ITEM *, BASE_SCREEN * > > m_changedItems
 
std::set< std::pair< EDA_ITEM *, BASE_SCREEN * > > m_deletedItems
 
std::vector< COMMIT_LINE > m_entries
 

Detailed Description

Definition at line 180 of file test_edit_relations.cpp.

Member Function Documentation

◆ Add()

COMMIT & COMMIT::Add ( EDA_ITEM * aItem,
BASE_SCREEN * aScreen = nullptr )
inlineinherited

Add a new item to the model.

Definition at line 74 of file commit.h.

References CHT_ADD, COMMIT(), and Stage().

Referenced by PCB_POINT_EDITOR::addCorner(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PCB_VIA_STACK::addMember(), CONSTRAINT_EDIT_TOOL::AddPointConstraint(), PCB_CONTROL::AppendBoard(), MULTICHANNEL_TOOL::applyRepeat(), MULTICHANNEL_TOOL::applySelectionRepeat(), MULTICHANNEL_TOOL::AutogenerateRuleAreas(), bindDimensionEndpoints(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_DATA_TEST_CASE_F(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), CONSTRAINT_EDIT_TOOL::commitConstraint(), EE_GRAPHIC_TOOL::commitItem(), RULE_AREA_CREATE_HELPER::commitRuleArea(), ZONE_CREATE_HELPER::commitZone(), DRAWING_TOOL::ConvertImageToOutlines(), SCH_EDIT_TOOL::ConvertImageToOutlines(), MULTICHANNEL_TOOL::copyRuleAreaContents(), MICROWAVE_TOOL::createInductorBetween(), CONVERT_TOOL::CreateLines(), CONVERT_TOOL::CreatePolys(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::DrawBarcode(), DRAWING_TOOL::DrawBezier(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::DrawEllipseArc(), DRAWING_TOOL::DrawLine(), DRAWING_TOOL::DrawRectangle(), DRAWING_TOOL::drawShape(), SCH_DRAWING_TOOLS::DrawSheet(), DRAWING_TOOL::DrawTable(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawVia(), EDIT_TOOL::Duplicate(), PCB_TUNING_PATTERN::EditFinish(), PCB_TUNING_PATTERN::EditStart(), PCB_VIA_STACK::EditStart(), PCB_VIA_STITCH::EditStart(), BOARD::ExchangeFootprint(), PCB_VIA_STACK::ExpandMultiHopMicrovias(), PAD_TOOL::explodePad(), EDIT_TOOL::FilletTracks(), DSN::SPECCTRA_DB::FromSESSION(), API_HANDLER_BOARD::handleCreateUpdateItemsInternal(), API_HANDLER_SCH::handleCreateUpdateItemsInternal(), API_HANDLER_PCB::handleInjectDrcError(), API_HANDLER_PCB::handlePlaceFootprintFromLibrary(), API_HANDLER_SCH::handlePlaceSymbolFromLibrary(), EE_GRAPHIC_TOOL::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), PCBNEW_JOBS_HANDLER::JobExportDrc(), SCH_SELECTION_TOOL::Main(), GENERATOR_TOOL::MakeViaStackFromSelection(), EDIT_TOOL::ModifyLines(), ARRAY_TOOL::onDialogClosed(), CONVERT_TOOL::OutsetItems(), ZONE_CREATE_HELPER::performZoneCutout(), PCB_CONTROL::placeBoardItems(), PCB_CONTROL::PlaceDrillMap(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceImportedGraphics(), INTERACTIVE_PLACER_BASE::PlaceItem(), PAD_TOOL::PlacePad(), DRAWING_TOOL::PlaceSubGrid(), DRAWING_TOOL::PlaceText(), BACK_ANNOTATE::processNetNameChange(), PCB_TUNING_PATTERN::Remove(), PCB_EDIT_FRAME::ResolveDRCExclusions(), GRAPHIC_EDIT_TOOL::runInteractive(), DRAWING_TOOL::runSimpleShapeDraw(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), PCB_EDIT_FRAME::SaveSelectionAsDesignBlock(), SCH_EDIT_FRAME::SaveSelectionAsDesignBlock(), CONVERT_TOOL::SegmentToArc(), stageAutoConstraints(), DIALOG_FP_EDIT_PAD_TABLE::TransferDataFromWindow(), PCB_VIA_STITCH::Update(), PCB_EDIT_FRAME::UpdateDesignBlockFromSelection(), SCH_EDIT_FRAME::UpdateDesignBlockFromSelection(), PCB_PROPERTIES_PANEL::valueChanged(), and BOARD_EDITOR_CONTROL::ZoneDuplicate().

◆ Added()

◆ Checkpoint()

int COMMIT::Checkpoint ( )
inlineinherited

◆ clear()

void COMMIT::clear ( )
inlineprotectedinherited

Should be called in Push() & Revert() methods.

Definition at line 176 of file commit.h.

References m_addedItems, m_changedItems, m_deletedItems, and m_entries.

Referenced by BOARD_COMMIT::Push(), SCH_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), and SCH_COMMIT::revertLibEdit().

◆ convert() [1/2]

UNDO_REDO COMMIT::convert ( CHANGE_TYPE aType) const
protectedinherited

Definition at line 291 of file commit.cpp.

References CHANGED, CHT_ADD, CHT_MODIFY, CHT_REMOVE, DELETED, and NEWITEM.

◆ convert() [2/2]

CHANGE_TYPE COMMIT::convert ( UNDO_REDO aType) const
protectedinherited

Definition at line 279 of file commit.cpp.

References CHANGED, CHT_ADD, CHT_MODIFY, CHT_REMOVE, DELETED, and NEWITEM.

◆ dropEntriesAfter()

void COMMIT::dropEntriesAfter ( int aCheckpoint)
inlineprotectedinherited

◆ Empty()

bool COMMIT::Empty ( ) const
inlineinherited

Definition at line 145 of file commit.h.

References m_entries.

Referenced by DIALOG_MIGRATE_3D_MODELS::AutoMigrateByFilename(), SCH_EDIT_TOOL::AutoplaceFields(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), SCH_EDIT_TOOL::ChangeTextType(), checkCrossingTrackTeardropsStayOnCopper(), SCH_EDIT_FRAME::CopyVariant(), DIALOG_CLEANUP_GRAPHICS::doCleanup(), DIALOG_CLEANUP_TRACKS_AND_VIAS::doCleanup(), SCH_EDIT_TOOL::editFieldText(), EDIT_TOOL::Flip(), API_HANDLER_SCH::handleCopyVariant(), API_HANDLER_SCH::handleDeleteVariant(), API_HANDLER_SCH::handleRenameVariant(), SCH_TOOL_BASE< T >::Increment(), SCH_EDITOR_CONTROL::IncrementAnnotations(), EDIT_TOOL::JustifyText(), SCH_EDIT_TOOL::JustifyText(), SCH_POINT_EDITOR::Main(), SCH_SELECTION_TOOL::Main(), EDIT_TOOL::Mirror(), SCH_EDIT_TOOL::Mirror(), BOARD_EDITOR_CONTROL::modifyLockSelected(), SCH_EDIT_TOOL::modifyLockSelected(), DIALOG_SYMBOL_FIELDS_TABLE::onDeleteVariant(), DIALOG_SYMBOL_FIELDS_TABLE::onRenameVariant(), BOARD_COMMIT::Push(), SCH_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), SCHEMATIC::RecalculateConnections(), SCH_EDIT_FRAME::RemoveVariant(), HIERARCHY_PANE::renameSheet(), SCH_EDIT_FRAME::RenameVariant(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), DIALOG_DIMENSION_PROPERTIES::resolveDrivingConstraint(), SCH_COMMIT::revertLibEdit(), EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), SCH_EDIT_FRAME::SaveSymbolToSchematic(), SCH_EDIT_FRAME::SelectBodyStyle(), SCH_EDIT_TOOL::SetAttribute(), snapAutoConstraints(), CONSTRAINT_EDIT_TOOL::solveAddedConstraint(), CONSTRAINT_EDIT_TOOL::SolveAfterEdit(), CONSTRAINT_EDIT_TOOL::SolveAfterMove(), EDIT_TOOL::Swap(), SCH_EDIT_TOOL::Swap(), EDIT_TOOL::SwapGateNets(), EDIT_TOOL::SwapPadNets(), SCH_EDIT_TOOL::SwapPins(), SCH_EDIT_TOOL::SwapUnitLabels(), EDIT_TOOL::ToggleFootprintAttribute(), DIALOG_FOOTPRINT_FIELDS_TABLE::TransferDataFromWindow(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::TransferDataFromWindow(), DIALOG_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_SHAPE_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PIN_PROPERTIES::TransferDataFromWindow(), DIALOG_SYMBOL_FIELDS_TABLE::TransferDataFromWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLE_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLECELL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), and PCB_PROPERTIES_PANEL::valueChanged().

◆ findEntry()

COMMIT::COMMIT_LINE * COMMIT::findEntry ( EDA_ITEM * aItem,
BASE_SCREEN * aScreen = nullptr )
protectedinherited

Search for an entry describing change for a particular item.

Returns
null if there is no related entry.

Definition at line 267 of file commit.cpp.

References m_entries.

Referenced by GetStatus(), SCH_COMMIT::RemovedForCleanup(), and BOARD_COMMIT::RemoveOrDiscard().

◆ GetFirst()

EDA_ITEM * COMMIT::GetFirst ( ) const
inlineinherited

Definition at line 153 of file commit.h.

References m_entries.

◆ GetStatus()

◆ makeEntry()

void COMMIT::makeEntry ( EDA_ITEM * aItem,
CHANGE_TYPE aType,
EDA_ITEM * aCopy = nullptr,
BASE_SCREEN * aScreen = nullptr )
protectedvirtualinherited

◆ makeImage()

EDA_ITEM * POLY_EDIT_COMMIT::makeImage ( EDA_ITEM * aItem) const
inlineoverrideprotectedvirtual

Implements COMMIT.

Definition at line 190 of file test_edit_relations.cpp.

References EDA_ITEM::Clone().

◆ Modified()

COMMIT & COMMIT::Modified ( EDA_ITEM * aItem,
EDA_ITEM * aCopy,
BASE_SCREEN * aScreen = nullptr )
inherited

Create an undo entry for an item that has been already modified.

Note
Requires a copy done before the modification.

Definition at line 224 of file commit.cpp.

References CHT_MODIFY, COMMIT(), makeEntry(), and undoLevelItem().

Referenced by FOOTPRINT_FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), SYMBOL_FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), BOOST_AUTO_TEST_CASE(), DIALOG_CHANGE_SYMBOLS::processSymbols(), and Stage().

◆ Modify()

COMMIT & COMMIT::Modify ( EDA_ITEM * aItem,
BASE_SCREEN * aScreen = nullptr,
RECURSE_MODE aRecurse = RECURSE_MODE::NO_RECURSE )
inlineinherited

Modify a given item in the model.

Note
Must be called before modification is performed.

Definition at line 102 of file commit.h.

References CHT_MODIFY, COMMIT(), NO_RECURSE, and Stage().

Referenced by PCB_PROPERTIES_PANEL::addBlankCustomProperty(), SCH_PROPERTIES_PANEL::addBlankCustomProperty(), PCB_PROPERTIES_PANEL::addBlankField(), SCH_PROPERTIES_PANEL::addBlankField(), PCB_POINT_EDITOR::addCorner(), SCH_POINT_EDITOR::addCorner(), SYMBOL_EDITOR_MOVE_TOOL::AlignElements(), SCH_MOVE_TOOL::AlignToGrid(), SCH_EDIT_FRAME::AnnotateSymbols(), PCB_CONTROL::AppendBoard(), BACK_ANNOTATE::applyChangelist(), BACK_ANNOTATE::applyPinSwaps(), MULTICHANNEL_TOOL::applyRepeat(), DIALOG_RESOLVE_FIELD_CASE_CONFLICTS::applyResolutions(), MATCH_PROPERTIES_TOOL::applyToTargets(), SCH_EDITOR_CONTROL::AssignFootprints(), MULTICHANNEL_TOOL::AutogenerateRuleAreas(), DIALOG_MIGRATE_3D_MODELS::AutoMigrateByFilename(), SCH_DRAWING_TOOLS::AutoPlaceAllSheetPins(), SCH_EDIT_TOOL::AutoplaceFields(), AR_AUTOPLACER::AutoplaceFootprints(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_DATA_TEST_CASE_F(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), SCH_LINE_WIRE_BUS_TOOL::BreakSegment(), PCB_POINT_EDITOR::chamferCorner(), EDIT_TOOL::ChangeTrackLayer(), EDIT_TOOL::ChangeTrackWidth(), SCH_EDIT_TOOL::CleanupSheetPins(), VIA_STITCH_TOOL::ClearStitchViaExclusions(), SCH_EDIT_TOOL::ClearVariantSymbol(), PCB_CONTROL::CollectAndEmbed3DModels(), EE_GRAPHIC_TOOL::commitItem(), SYMBOL_EDITOR_EDIT_TOOL::ConvertStackedPins(), MULTICHANNEL_TOOL::copyRuleAreaContents(), SCH_SCREEN::CopyVariant(), SCH_EDIT_FRAME::DeleteAnnotation(), EDIT_TOOL::DeleteItems(), API_HANDLER_BOARD::deleteItemsInternal(), API_HANDLER_SYMBOL::deleteItemsInternal(), SCH_SCREEN::DeleteVariant(), MULTICHANNEL_TOOL::detachArea(), SCH_EDIT_TOOL::DoDelete(), SYMBOL_EDITOR_EDIT_TOOL::DoDelete(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), doPushPadProperties(), SCH_DRAWING_TOOLS::doSyncSheetsPins(), RECTANGLE_POINT_EDIT_BEHAVIOR::dragPinsOnEdge(), SCH_DRAWING_TOOLS::DrawSheet(), DRAWING_TOOL::DrawVia(), BOARD_ITEM::Duplicate(), PCB_TABLE::Duplicate(), SCH_ITEM::Duplicate(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_EDIT_FRAME::Edit_Zone_Params(), EditConstraintValue(), SYMBOL_EDITOR_EDIT_TOOL::editFieldProperties(), SCH_EDIT_TOOL::editFieldText(), PAD_TOOL::EditPad(), SCH_EDIT_TOOL::EditPageNumber(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_EDIT_TOOL::EditProperties(), PCB_TUNING_PATTERN::EditStart(), PCB_VIA_STACK::EditStart(), PCB_VIA_STITCH::EditStart(), PAD_TOOL::EnumeratePads(), BOARD::ExchangeFootprint(), VIA_STITCH_TOOL::ExcludeStitchVia(), SYMBOL_EDITOR_EDIT_TOOL::ExplodeStackedPin(), SCH_EDITOR_CONTROL::ExportSymbolsToLibrary(), EDIT_TOOL::FilletTracks(), EDIT_TOOL::Flip(), DSN::SPECCTRA_DB::FromSESSION(), GENERATOR_TOOL::GENERATOR_TOOL(), SCH_MOVE_TOOL::getConnectedDragItems(), API_HANDLER_BOARD::handleCreateUpdateItemsInternal(), API_HANDLER_SCH::handleCreateUpdateItemsInternal(), API_HANDLER_SYMBOL::handleCreateUpdateItemsInternal(), API_HANDLER_BOARD::handleFlipItems(), SCH_PROPERTIES_PANEL::handleSheetFilenameChange(), EE_GRAPHIC_TOOL::ImportGraphics(), EDIT_TOOL::Increment(), SCH_TOOL_BASE< T >::Increment(), SCH_EDITOR_CONTROL::IncrementAnnotations(), EDIT_TOOL::JustifyText(), SCH_EDIT_TOOL::JustifyText(), MULTICHANNEL_TOOL::linkAreas(), SCH_POINT_EDITOR::Main(), GENERATOR_TOOL::MakeViaStackFromSelection(), mergeZones(), SCH_MOVE_TOOL::migrateHiddenJunctions(), EDIT_TOOL::Mirror(), SCH_EDIT_TOOL::Mirror(), PNS_KICAD_IFACE::modifyBoardItem(), EDIT_TOOL::ModifyLines(), BOARD_EDITOR_CONTROL::modifyLockSelected(), SCH_EDIT_TOOL::modifyLockSelected(), EDIT_TOOL::MoveExact(), SCH_ALIGN_TOOL::moveItem(), moveSelectionBy(), ARRAY_TOOL::onDialogClosed(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_VERTEX_EDITOR_PANE::OnGridCellChange(), PCB_PROPERTIES_PANEL::onKeyRenamed(), SCH_PROPERTIES_PANEL::onKeyRenamed(), DIALOG_UPDATE_SYMBOL_FIELDS::onOkButtonClicked(), DIALOG_MIGRATE_3D_MODELS::OnReplaceClick(), HIERARCHY_PANE::onRightClick(), SCH_MOVE_TOOL::orthoLineDrag(), EDIT_TOOL::PackAndMoveFootprints(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PAD_TOOL::pastePadProperties(), SYMBOL_EDITOR_EDIT_TOOL::PinTable(), PCB_CONTROL::placeBoardItems(), SCH_MOVE_TOOL::prepareMoveOperation(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), BACK_ANNOTATE::processNetNameChange(), CN_CONNECTIVITY_ALGO::propagateConnections(), MULTICHANNEL_TOOL::pruneExistingGroups(), BOARD_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), DIALOG_BOARD_REANNOTATE::ReannotateBoard(), PCB_POINT_EDITOR::removeCorner(), SCH_POINT_EDITOR::removeCorner(), PCB_PROPERTIES_PANEL::removeCustomProperty(), SCH_PROPERTIES_PANEL::removeCustomProperty(), PCB_PROPERTIES_PANEL::removeField(), SCH_PROPERTIES_PANEL::removeField(), SCH_EDITOR_CONTROL::RemoveFromNetChain(), HIERARCHY_PANE::renameIdenticalSheets(), HIERARCHY_PANE::renameSheet(), SCH_SCREEN::RenameVariant(), MULTICHANNEL_TOOL::RepeatLayout(), SYMBOL_EDITOR_PIN_TOOL::RepeatPin(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), SCH_FIND_REPLACE_TOOL::ReplaceAndFindNext(), PCB_VIA_STACK::reuseMembers(), EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), GRAPHIC_EDIT_TOOL::runInteractive(), PCB_EDIT_FRAME::SaveSelectionAsDesignBlock(), SCH_EDIT_FRAME::SaveSelectionAsDesignBlock(), SCH_EDIT_FRAME::SaveSymbolToSchematic(), SCHEMATIC::SCHEMATIC(), SCH_EDIT_FRAME::SelectBodyStyle(), SCH_EDIT_FRAME::SelectUnit(), SCH_EDIT_FRAME::SetAltPinFunction(), DRAWING_TOOL::SetAnchor(), SCH_EDIT_TOOL::SetAttribute(), SCH_EDIT_TOOL::SetVariantSymbol(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), PCB_VIA_STACK::ShowPropertiesDialog(), PCB_VIA_STITCH::ShowPropertiesDialog(), snapAutoConstraints(), CONSTRAINT_EDIT_TOOL::solveAddedConstraint(), CONSTRAINT_EDIT_TOOL::SolveAfterEdit(), CONSTRAINT_EDIT_TOOL::SolveAfterMove(), Stage(), stageAddToGroup(), EDIT_TOOL::Swap(), SCH_EDIT_TOOL::Swap(), EDIT_TOOL::SwapGateNets(), EDIT_TOOL::SwapPadNets(), SCH_EDIT_TOOL::SwapPinLabels(), SCH_EDIT_TOOL::SwapPins(), SCH_EDIT_TOOL::SwapUnitLabels(), SCHEMATIC::SyncLibSymbolPinMaps(), SCH_SYMBOL::SyncOtherUnits(), EDIT_TOOL::ToggleFootprintAttribute(), BOARD_EDITOR_CONTROL::TrackWidthDec(), BOARD_EDITOR_CONTROL::TrackWidthInc(), DIALOG_BARCODE_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::TransferDataFromWindow(), DIALOG_EDIT_SYMBOLS_LIBID::TransferDataFromWindow(), DIALOG_FP_EDIT_PAD_TABLE::TransferDataFromWindow(), DIALOG_GENERATED_TABLE_PROPERTIES::TransferDataFromWindow(), DIALOG_GRID_ITEM_PROPERTIES::TransferDataFromWindow(), DIALOG_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_JUNCTION_PROPS::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_LINE_PROPERTIES::TransferDataFromWindow(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), DIALOG_SHAPE_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PIN_PROPERTIES::TransferDataFromWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLE_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLECELL_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow(), DIALOG_WIRE_BUS_PROPERTIES::TransferDataFromWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), PCB_VIA_STITCH::Update(), PCB_EDIT_FRAME::UpdateDesignBlockFromSelection(), SCH_EDIT_FRAME::UpdateDesignBlockFromSelection(), DIALOG_FIELD_PROPERTIES::UpdateField(), LINE_POINT_EDIT_BEHAVIOR::UpdateItem(), PCB_TABLECELL_POINT_EDIT_BEHAVIOR::UpdateItem(), SCH_TABLECELL_POINT_EDIT_BEHAVIOR::UpdateItem(), SHAPE_GROUP_POINT_EDIT_BEHAVIOR::UpdateItem(), SHEET_POINT_EDIT_BEHAVIOR::UpdateItem(), PCB_POINT_EDITOR::updateItem(), PCB_PROPERTIES_PANEL::valueChanged(), SCH_PROPERTIES_PANEL::valueChanged(), BOARD_EDITOR_CONTROL::ViaSizeDec(), BOARD_EDITOR_CONTROL::ViaSizeInc(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), BOARD_EDITOR_CONTROL::ZonePriorityLower(), BOARD_EDITOR_CONTROL::ZonePriorityMoveToBottom(), BOARD_EDITOR_CONTROL::ZonePriorityMoveToTop(), BOARD_EDITOR_CONTROL::ZonePriorityRaise(), GLOBAL_EDIT_TOOL::ZonesManager(), ZONE_FILLER_TOOL::ZoneUnfill(), and ZONE_FILLER_TOOL::ZoneUnfillAll().

◆ Push()

void POLY_EDIT_COMMIT::Push ( const wxString & aMessage,
int aFlags )
inlineoverridevirtual

Execute the changes.

Implements COMMIT.

Definition at line 183 of file test_edit_relations.cpp.

◆ Remove()

COMMIT & COMMIT::Remove ( EDA_ITEM * aItem,
BASE_SCREEN * aScreen = nullptr )
inlineinherited

Remove a new item from the model.

Definition at line 86 of file commit.h.

References CHT_REMOVE, COMMIT(), and Stage().

Referenced by MULTICHANNEL_TOOL::AutogenerateRuleAreas(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_DATA_TEST_CASE_F(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), PCB_POINT_EDITOR::chamferCorner(), DRAWING_TOOL::ConvertImageToOutlines(), SCH_EDIT_TOOL::ConvertImageToOutlines(), MULTICHANNEL_TOOL::copyRuleAreaContents(), CONVERT_TOOL::CreateLines(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::DeleteItems(), API_HANDLER_BOARD::deleteItemsInternal(), API_HANDLER_SCH::deleteItemsInternal(), SCH_EDIT_TOOL::DoDelete(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), PCB_TUNING_PATTERN::EditFinish(), PCB_VIA_STITCH::EditFinish(), PAD_TOOL::EditPad(), BOARD::ExchangeFootprint(), PCB_VIA_STACK::ExpandMultiHopMicrovias(), SCH_EDIT_TOOL::FixERCError(), DSN::SPECCTRA_DB::FromSESSION(), API_HANDLER_BOARD::handleCreateUpdateItemsInternal(), mergeZones(), EDIT_TOOL::ModifyLines(), CONVERT_TOOL::OutsetItems(), ZONE_CREATE_HELPER::performZoneCutout(), MULTICHANNEL_TOOL::pruneExistingGroups(), PCB_TUNING_PATTERN::Remove(), PCB_VIA_STACK::Remove(), PCB_VIA_STITCH::Remove(), CONSTRAINT_EDIT_TOOL::removeConstraint(), CONSTRAINT_EDIT_TOOL::RemoveConstraints(), PCB_POINT_EDITOR::removeCorner(), BOARD_COMMIT::RemoveOrDiscard(), GRAPHIC_EDIT_TOOL::runInteractive(), DIALOG_FP_EDIT_PAD_TABLE::TransferDataFromWindow(), PCB_SELECTION_TOOL::unrouteSegment(), PCB_SELECTION_TOOL::unrouteSelected(), PCB_PROPERTIES_PANEL::valueChanged(), and GLOBAL_EDIT_TOOL::ZonesManager().

◆ Removed()

◆ ResolveItem()

EDA_ITEM * POLY_EDIT_COMMIT::ResolveItem ( KIID & aID)
inlineoverridevirtual

Search for an item in this commit that matches the provided KIID.

Parameters
aIDis the KIID to search for in the committed items.
Returns
null pointer if aID is null or the item is not found.

Implements COMMIT.

Definition at line 186 of file test_edit_relations.cpp.

◆ Revert()

void POLY_EDIT_COMMIT::Revert ( )
inlineoverridevirtual

Revert the commit by restoring the modified items state.

Implements COMMIT.

Definition at line 184 of file test_edit_relations.cpp.

◆ RevertToCheckpoint()

void POLY_EDIT_COMMIT::RevertToCheckpoint ( int aCheckpoint)
inlineoverridevirtual

Implements COMMIT.

Definition at line 185 of file test_edit_relations.cpp.

◆ Stage() [1/3]

◆ Stage() [2/3]

◆ Stage() [3/3]

COMMIT & COMMIT::Stage ( std::vector< EDA_ITEM * > & container,
CHANGE_TYPE aChangeType,
BASE_SCREEN * aScreen = nullptr )
virtualinherited

Reimplemented in BOARD_COMMIT, and SCH_COMMIT.

Definition at line 141 of file commit.cpp.

References COMMIT(), and Stage().

◆ StagedItems()

std::vector< std::pair< EDA_ITEM *, int > > COMMIT::StagedItems ( ) const
inlineinherited

Definition at line 155 of file commit.h.

References m_entries.

Referenced by ZONE::Duplicate().

◆ undoLevelItem()

EDA_ITEM * POLY_EDIT_COMMIT::undoLevelItem ( EDA_ITEM * aItem) const
inlineoverrideprotectedvirtual

Implements COMMIT.

Definition at line 189 of file test_edit_relations.cpp.

◆ Unmodify()

◆ Unstage()

Member Data Documentation

◆ m_addedItems

std::set<std::pair<EDA_ITEM*, BASE_SCREEN*> > COMMIT::m_addedItems
protectedinherited

Definition at line 222 of file commit.h.

Referenced by clear(), dropEntriesAfter(), makeEntry(), Stage(), and Unstage().

◆ m_changedItems

std::set<std::pair<EDA_ITEM*, BASE_SCREEN*> > COMMIT::m_changedItems
protectedinherited

Definition at line 223 of file commit.h.

Referenced by clear(), dropEntriesAfter(), makeEntry(), Stage(), and Unmodify().

◆ m_deletedItems

std::set<std::pair<EDA_ITEM*, BASE_SCREEN*> > COMMIT::m_deletedItems
protectedinherited

Definition at line 224 of file commit.h.

Referenced by clear(), dropEntriesAfter(), makeEntry(), BOARD_COMMIT::Stage(), and Stage().

◆ m_entries


The documentation for this class was generated from the following file: