|
KiCad PCB EDA Suite
|
One change record on a single item. More...
#include <kicad_diff_types.h>
Public Member Functions | |
| bool | operator== (const ITEM_CHANGE &aOther) const |
| nlohmann::json | ToJson () const |
Static Public Member Functions | |
| static ITEM_CHANGE | FromJson (const nlohmann::json &aJson) |
Public Attributes | |
| KIID_PATH | id |
| wxString | typeName |
| CHANGE_KIND | kind = CHANGE_KIND::MODIFIED |
| std::vector< PROPERTY_DELTA > | properties |
| BOX2I | bbox |
| std::optional< wxString > | refdes |
| std::vector< ITEM_CHANGE > | children |
One change record on a single item.
The id is a KIID_PATH so that hierarchical context (sheet path for schematics, footprint path for child pads) is preserved across the diff/merge pipeline. The refdes field is presentation only and is not used to key items in the engine.
kind defaults to MODIFIED because that is the only kind an applier can act on without materializing or deleting an item, so a record whose kind was never set stays inert.
Definition at line 286 of file kicad_diff_types.h.
|
static |
Definition at line 693 of file kicad_diff_types.cpp.
References bbox, KICAD_DIFF::ChangeKindFromString(), children, FromJson(), KICAD_DIFF::PROPERTY_DELTA::FromJson(), id, kind, properties, refdes, and typeName.
Referenced by BOOST_AUTO_TEST_CASE(), KICAD_DIFF::DOCUMENT_DIFF::FromJson(), and FromJson().
| bool KICAD_DIFF::ITEM_CHANGE::operator== | ( | const ITEM_CHANGE & | aOther | ) | const |
Definition at line 651 of file kicad_diff_types.cpp.
References bbox, children, id, kind, operator==(), properties, refdes, and typeName.
Referenced by operator==().
| nlohmann::json KICAD_DIFF::ITEM_CHANGE::ToJson | ( | ) | const |
Definition at line 663 of file kicad_diff_types.cpp.
References bbox, KICAD_DIFF::ChangeKindToString(), children, kind, properties, refdes, ToJson(), and typeName.
Referenced by BOOST_AUTO_TEST_CASE(), and ToJson().
| BOX2I KICAD_DIFF::ITEM_CHANGE::bbox |
Definition at line 292 of file kicad_diff_types.h.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SCH_DIFFER::Diff(), KICAD_DIFF::PCB_DIFFER::diffFootprintChildren(), KICAD_DIFF::DiffLibraryByName(), FromJson(), operator==(), and ToJson().
| std::vector<ITEM_CHANGE> KICAD_DIFF::ITEM_CHANGE::children |
Definition at line 294 of file kicad_diff_types.h.
Referenced by 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(), KICAD_DIFF::BuildChangeTreeGroups(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SYM_LIB_DIFFER::Diff(), KICAD_DIFF::FormatDiffAsText(), FromJson(), operator==(), KICAD_DIFF::KICAD_MERGE_ENGINE::Plan(), DIALOG_KICAD_DIFF::showChange(), and ToJson().
| KIID_PATH KICAD_DIFF::ITEM_CHANGE::id |
Definition at line 288 of file kicad_diff_types.h.
Referenced by 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(), DIALOG_KICAD_DIFF::changeRowIds(), SYMBOL_EDITOR_CONTROL::CompareLibraryWithFile(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SCH_DIFFER::Diff(), KICAD_DIFF::PCB_DIFFER::diffFootprintChildren(), KICAD_DIFF::DiffLibraryByName(), findDocLevelChange(), findRootDocLevelChange(), KICAD_DIFF::FormatDiffAsText(), FromJson(), operator==(), and DIALOG_KICAD_DIFF::showChange().
| CHANGE_KIND KICAD_DIFF::ITEM_CHANGE::kind = CHANGE_KIND::MODIFIED |
Definition at line 290 of file kicad_diff_types.h.
Referenced by 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_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), DIALOG_KICAD_DIFF::changeRowIds(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SCH_DIFFER::Diff(), KICAD_DIFF::SYM_LIB_DIFFER::Diff(), KICAD_DIFF::PCB_DIFFER::diffFootprintChildren(), KICAD_DIFF::DiffLibraryByName(), KICAD_DIFF::FormatDiffAsText(), FromJson(), operator==(), KICAD_DIFF::KICAD_MERGE_ENGINE::Plan(), DIALOG_KICAD_DIFF::showChange(), and ToJson().
| std::vector<PROPERTY_DELTA> KICAD_DIFF::ITEM_CHANGE::properties |
Definition at line 291 of file kicad_diff_types.h.
Referenced by 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(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SCH_DIFFER::Diff(), KICAD_DIFF::SYM_LIB_DIFFER::Diff(), KICAD_DIFF::PCB_DIFFER::diffFootprintChildren(), findProperty(), findProperty(), KICAD_DIFF::FormatDiffAsText(), FromJson(), KICAD_DIFF::IndexPropertiesByName(), operator==(), KICAD_DIFF::KICAD_MERGE_ENGINE::Plan(), DIALOG_KICAD_DIFF::showChange(), and ToJson().
| std::optional<wxString> KICAD_DIFF::ITEM_CHANGE::refdes |
Definition at line 293 of file kicad_diff_types.h.
Referenced by 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(), KICAD_DIFF::ChangeDisplayLabel(), KICAD_DIFF::ChangeMatchesSearchFilter(), DIALOG_KICAD_DIFF::changeRowIds(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SCH_DIFFER::Diff(), KICAD_DIFF::SYM_LIB_DIFFER::Diff(), KICAD_DIFF::PCB_DIFFER::diffFootprintChildren(), KICAD_DIFF::DiffLibraryByName(), KICAD_DIFF::FormatDiffAsText(), FromJson(), KICAD_DIFF::IsRoutingNetChange(), operator==(), DIALOG_KICAD_DIFF::showChange(), and ToJson().
| wxString KICAD_DIFF::ITEM_CHANGE::typeName |
Definition at line 289 of file kicad_diff_types.h.
Referenced by 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_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), KICAD_DIFF::ChangeDisplayLabel(), KICAD_DIFF::ChangeInvalidatesZone(), KICAD_DIFF::ChangeMatchesSearchFilter(), KICAD_DIFF::ChangeRequiresConnectivityRebuild(), KICAD_DIFF::PCB_DIFFER::Diff(), KICAD_DIFF::SCH_DIFFER::Diff(), KICAD_DIFF::SYM_LIB_DIFFER::Diff(), KICAD_DIFF::PCB_DIFFER::diffFootprintChildren(), KICAD_DIFF::DiffLibraryByName(), KICAD_DIFF::FormatDiffAsText(), FromJson(), KICAD_DIFF::IsRoutingNetChange(), operator==(), DIALOG_KICAD_DIFF::showChange(), and ToJson().