KiCad PCB EDA Suite
|
#include <sch_screen.h>
Classes | |
struct | BusAliasCmp |
Compare two BUS_ALIAS objects by name. More... | |
Public Member Functions | |
SCH_SCREEN (EDA_ITEM *aParent=nullptr) | |
~SCH_SCREEN () | |
SCHEMATIC * | Schematic () const |
EE_RTREE & | Items () |
Gets the full RTree, usually for iterating. | |
const EE_RTREE & | Items () const |
bool | IsEmpty () const |
bool | HasItems (KICAD_T aItemType) const |
bool | HasSheets () const |
virtual wxString | GetClass () const override |
Return the class name. | |
void | SetFileFormatVersionAtLoad (int aVersion) |
int | GetFileFormatVersionAtLoad () const |
const PAGE_INFO & | GetPageSettings () const |
void | SetPageSettings (const PAGE_INFO &aPageSettings) |
void | SetFileName (const wxString &aFileName) |
Set the file name for this screen to aFileName. | |
const wxString & | GetFileName () const |
void | SetFileReadOnly (bool aIsReadOnly) |
bool | IsReadOnly () const |
void | SetFileExists (bool aFileExists) |
bool | FileExists () const |
const VECTOR2I & | GetAuxOrigin () const |
void | SetAuxOrigin (const VECTOR2I &aPosition) |
const TITLE_BLOCK & | GetTitleBlock () const |
void | SetTitleBlock (const TITLE_BLOCK &aTitleBlock) |
void | DecRefCount () |
void | IncRefCount () |
int | GetRefCount () const |
void | SetConnectivityDirty () |
std::vector< SCH_SHEET_PATH > & | GetClientSheetPaths () |
Return the number of times this screen is used. | |
void | Append (SCH_ITEM *aItem, bool aUpdateLibSymbol=true) |
void | Append (SCH_SCREEN *aScreen) |
Copy the contents of aScreen into this SCH_SCREEN object. | |
void | Clear (bool aFree=true) |
Delete all draw items and clears the project settings. | |
void | FreeDrawList () |
Free all the items from the schematic associated with the screen. | |
SCH_ITEM * | GetItem (const VECTOR2I &aPosition, int aAccuracy=0, KICAD_T aType=SCH_LOCATE_ANY_T) const |
Check aPosition within a distance of aAccuracy for items of type aFilter. | |
void | UpdateSymbolLinks (REPORTER *aReporter=nullptr) |
Initialize the LIB_SYMBOL reference for each SCH_SYMBOL found in this schematic from the project SYMBOL_LIB_TABLE. | |
void | UpdateLocalLibSymbolLinks () |
Initialize the LIB_SYMBOL reference for each SCH_SYMBOL found in this schematic with the local project library symbols. | |
void | Print (const SCH_RENDER_SETTINGS *aSettings) |
Print all the items in the screen to aDC. | |
void | Plot (PLOTTER *aPlotter, const SCH_PLOT_OPTS &aPlotOpts) const |
Plot all the schematic objects to aPlotter. | |
bool | Remove (SCH_ITEM *aItem, bool aUpdateLibSymbol=true) |
Remove aItem from the schematic associated with this screen. | |
void | Update (SCH_ITEM *aItem, bool aUpdateLibSymbol=true) |
Update aItem's bounding box in the tree. | |
void | DeleteItem (SCH_ITEM *aItem) |
Removes aItem from the linked list and deletes the object. | |
bool | CheckIfOnDrawList (const SCH_ITEM *aItem) const |
void | TestDanglingEnds (const SCH_SHEET_PATH *aPath=nullptr, std::function< void(SCH_ITEM *)> *aChangedHandler=nullptr) const |
Test all of the connectable objects in the schematic for unused connection points. | |
std::set< SCH_ITEM * > | MarkConnections (SCH_LINE *aSegment, bool aSecondPass) |
Return all wires and junctions connected to aSegment which are not connected any symbol pin. | |
void | ClearDrawingState () |
Clear the state flags of all the items in the screen. | |
size_t | CountConnectedItems (const VECTOR2I &aPos, bool aTestJunctions) const |
bool | IsJunction (const VECTOR2I &aPosition) const |
Test if a junction is required for the items at aPosition on the screen. | |
bool | IsExplicitJunction (const VECTOR2I &aPosition) const |
Indicates that a junction dot is necessary at the given location. | |
bool | IsExplicitJunctionNeeded (const VECTOR2I &aPosition) const |
Indicates that a junction dot is necessary at the given location, and does not yet exist. | |
SPIN_STYLE | GetLabelOrientationForPoint (const VECTOR2I &aPosition, SPIN_STYLE aDefaultOrientation, const SCH_SHEET_PATH *aSheet) const |
bool | IsExplicitJunctionAllowed (const VECTOR2I &aPosition) const |
Indicates that a juction dot may be placed at the given location. | |
bool | IsTerminalPoint (const VECTOR2I &aPosition, int aLayer) const |
Test if aPosition is a connection point on aLayer. | |
SCH_PIN * | GetPin (const VECTOR2I &aPosition, SCH_SYMBOL **aSymbol=nullptr, bool aEndPointOnly=false) const |
Test the screen for a symbol pin item at aPosition. | |
SCH_SHEET_PIN * | GetSheetPin (const VECTOR2I &aPosition) const |
Test the screen if aPosition is a sheet label object. | |
void | ClearAnnotation (SCH_SHEET_PATH *aSheetPath, bool aResetPrefix) |
Clear the annotation for the symbols in aSheetPath on the screen. | |
void | EnsureAlternateReferencesExist () |
For screens shared by many sheetpaths (complex hierarchies): to be able to clear or modify any reference related sharing this screen (i.e. | |
void | GetHierarchicalItems (std::vector< SCH_ITEM * > *aItems) const |
Add all schematic sheet and symbol objects in the screen to aItems. | |
void | GetSheets (std::vector< SCH_ITEM * > *aItems) const |
Similar to Items().OfType( SCH_SHEET_T ), but return the sheets in a deterministic order (L-R, T-B) for sheet numbering. | |
SCH_LINE * | GetLine (const VECTOR2I &aPosition, int aAccuracy=0, int aLayer=LAYER_NOTES, SCH_LINE_TEST_T aSearchType=ENTIRE_LENGTH_T) const |
Return a line item located at aPosition. | |
SCH_LINE * | GetWire (const VECTOR2I &aPosition, int aAccuracy=0, SCH_LINE_TEST_T aSearchType=ENTIRE_LENGTH_T) const |
SCH_LINE * | GetBus (const VECTOR2I &aPosition, int aAccuracy=0, SCH_LINE_TEST_T aSearchType=ENTIRE_LENGTH_T) const |
std::vector< SCH_LINE * > | GetBusesAndWires (const VECTOR2I &aPosition, bool aIgnoreEndpoints=false) const |
Return buses and wires passing through aPosition. | |
std::vector< VECTOR2I > | GetConnections () const |
Collect a unique list of all possible connection points in the schematic. | |
std::vector< VECTOR2I > | GetNeededJunctions (const std::deque< EDA_ITEM * > &aItems) const |
Return the unique set of points belonging to aItems where a junction is needed. | |
SCH_LABEL_BASE * | GetLabel (const VECTOR2I &aPosition, int aAccuracy=0) const |
Return a label item located at aPosition. | |
const std::map< wxString, LIB_SYMBOL * > & | GetLibSymbols () const |
Fetch a list of unique LIB_SYMBOL object pointers required to properly render each SCH_SYMBOL in this schematic. | |
void | AddLibSymbol (LIB_SYMBOL *aLibSymbol) |
Add aLibSymbol to the library symbol map. | |
void | FixupEmbeddedData () |
After loading a file from disk, the library symbols do not yet contain the full data for their embedded files, only a reference. | |
void | AddBusAlias (std::shared_ptr< BUS_ALIAS > aAlias) |
Add a bus alias definition (and transfers ownership of the pointer). | |
void | ClearBusAliases () |
Remove all bus alias definitions. | |
auto & | GetBusAliases () const |
Return a set of bus aliases defined in this screen. | |
const std::vector< SCH_SYMBOL_INSTANCE > & | GetSymbolInstances () const |
const std::vector< SCH_SHEET_INSTANCE > & | GetSheetInstances () const |
const KIID & | GetUuid () const |
void | AssignNewUuid () |
void | SetLegacySymbolInstanceData () |
Update the symbol value and footprint instance data for legacy designs. | |
void | FixLegacyPowerSymbolMismatches () |
Fix legacy power symbols that have mismatched value text fields and invisible power pin names. | |
bool | AllSymbolDefaultInstancesNotSet () |
Check all symbol default instance to see if they are not set yet. | |
bool | HasSymbolFieldNamesWithWhiteSpace () const |
void | MigrateSimModels () |
Migrate any symbols having V6 simulation models to their V7 equivalents. | |
void | PruneOrphanedSymbolInstances (const wxString &aProjectName, const SCH_SHEET_LIST &aValidSheetPaths) |
Remove all invalid symbol instance data in this screen object for the project defined by aProjectName and the list of aValidSheetPaths. | |
void | PruneOrphanedSheetInstances (const wxString &aProjectName, const SCH_SHEET_LIST &aValidSheetPaths) |
Remove all invalid sheet instance data in this screen object for the project defined by aProjectName and the list of aValidSheetPaths. | |
void | InitDataPoints (const VECTOR2I &aPageSizeInternalUnits) |
void | SetContentModified (bool aModified=true) |
bool | IsContentModified () const |
int | GetPageCount () const |
void | SetPageCount (int aPageCount) |
int | GetVirtualPageNumber () const |
void | SetVirtualPageNumber (int aPageNumber) |
const wxString & | GetPageNumber () const |
void | SetPageNumber (const wxString &aPageNumber) |
KICAD_T | Type () const |
Returns the type of object. | |
EDA_ITEM * | GetParent () const |
virtual void | SetParent (EDA_ITEM *aParent) |
bool | IsModified () const |
bool | IsNew () const |
bool | IsMoving () const |
bool | IsSelected () const |
bool | IsEntered () const |
bool | IsBrightened () const |
bool | IsRollover () const |
void | SetSelected () |
void | SetBrightened () |
void | ClearSelected () |
void | ClearBrightened () |
void | SetModified () |
void | SetFlags (EDA_ITEM_FLAGS aMask) |
void | XorFlags (EDA_ITEM_FLAGS aMask) |
void | ClearFlags (EDA_ITEM_FLAGS aMask=EDA_ITEM_ALL_FLAGS) |
EDA_ITEM_FLAGS | GetFlags () const |
bool | HasFlag (EDA_ITEM_FLAGS aFlag) const |
EDA_ITEM_FLAGS | GetEditFlags () const |
virtual void | ClearEditFlags () |
EDA_ITEM_FLAGS | GetTempFlags () const |
virtual void | ClearTempFlags () |
virtual bool | RenderAsBitmap (double aWorldScale) const |
void | SetIsShownAsBitmap (bool aBitmap) |
bool | IsShownAsBitmap () const |
virtual bool | IsType (const std::vector< KICAD_T > &aScanTypes) const |
Check whether the item is one of the listed types. | |
void | SetForceVisible (bool aEnable) |
Set and clear force visible flag used to force the item to be drawn even if it's draw attribute is set to not visible. | |
bool | IsForceVisible () const |
virtual void | GetMsgPanelInfo (EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) |
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes. | |
virtual wxString | GetFriendlyName () const |
virtual bool | HitTest (const VECTOR2I &aPosition, int aAccuracy=0) const |
Test if aPosition is inside or on the boundary of this item. | |
virtual bool | HitTest (const BOX2I &aRect, bool aContained, int aAccuracy=0) const |
Test if aRect intersects this item. | |
virtual const BOX2I | GetBoundingBox () const |
Return the orthogonal bounding box of this object for display purposes. | |
virtual VECTOR2I | GetPosition () const |
virtual void | SetPosition (const VECTOR2I &aPos) |
virtual const VECTOR2I | GetFocusPosition () const |
Similar to GetPosition, but allows items to return their visual center rather than their anchor. | |
virtual VECTOR2I | GetSortPosition () const |
Return the coordinates that should be used for sorting this element visually compared to other elements. | |
virtual EDA_ITEM * | Clone () const |
Create a duplicate of this item with linked list members set to NULL. | |
virtual INSPECT_RESULT | Visit (INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &aScanTypes) |
May be re-implemented for each derived class in order to handle all the types given by its member data. | |
wxString | GetTypeDesc () const |
Return a translated description of the type for this EDA_ITEM for display in user facing messages. | |
virtual wxString | GetItemDescription (UNITS_PROVIDER *aUnitsProvider, bool aFull) const |
Return a user-visible description string of this item. | |
virtual BITMAPS | GetMenuImage () const |
Return a pointer to an image to be used in menus. | |
virtual bool | Matches (const EDA_SEARCH_DATA &aSearchData, void *aAuxData) const |
Compare the item against the search criteria in aSearchData. | |
virtual bool | Replace (const EDA_SEARCH_DATA &aSearchData, void *aAuxData=nullptr) |
Perform a text replace using the find and replace criteria in aSearchData on items that support text find and replace. | |
virtual bool | IsReplaceable () const |
Override this method in any derived object that supports test find and replace. | |
bool | operator< (const EDA_ITEM &aItem) const |
Test if another item is less than this object. | |
virtual const BOX2I | ViewBBox () const override |
Return the bounding box of the item covering all its layers. | |
virtual std::vector< int > | ViewGetLayers () const override |
Return the all the layers within the VIEW the object is painted on. | |
virtual EMBEDDED_FILES * | GetEmbeddedFiles () |
bool | IsSCH_ITEM () const |
bool | IsBOARD_ITEM () const |
virtual void | ViewDraw (int aLayer, VIEW *aView) const |
Draw the parts of the object belonging to layer aLayer. | |
virtual double | ViewGetLOD (int aLayer, VIEW *aView) const |
Return the level of detail (LOD) of the item. | |
VIEW_ITEM_DATA * | viewPrivData () const |
void | SetForcedTransparency (double aForcedTransparency) |
double | GetForcedTransparency () const |
bool | Set (PROPERTY_BASE *aProperty, wxAny &aValue, bool aNotify=true) |
template<typename T > | |
bool | Set (PROPERTY_BASE *aProperty, T aValue, bool aNotify=true) |
template<typename T > | |
bool | Set (const wxString &aProperty, T aValue, bool aNotify=true) |
wxAny | Get (PROPERTY_BASE *aProperty) const |
template<typename T > | |
T | Get (PROPERTY_BASE *aProperty) const |
template<typename T > | |
std::optional< T > | Get (const wxString &aProperty) const |
virtual void | Serialize (google::protobuf::Any &aContainer) const |
Serializes this object to the given Any message. | |
virtual bool | Deserialize (const google::protobuf::Any &aContainer) |
Deserializes the given protobuf message into this object. | |
Static Public Member Functions | |
static bool | ClassOf (const EDA_ITEM *aItem) |
template<class T > | |
static INSPECT_RESULT | IterateForward (std::deque< T > &aList, INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &scanTypes) |
This changes first parameter to avoid the DList and use the main queue instead. | |
template<class T > | |
static INSPECT_RESULT | IterateForward (std::vector< T > &aList, INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &scanTypes) |
Change first parameter to avoid the DList and use std::vector instead. | |
static bool | Replace (const EDA_SEARCH_DATA &aSearchData, wxString &aText) |
Perform a text replace on aText using the find and replace criteria in aSearchData on items that support text find and replace. | |
static bool | Sort (const EDA_ITEM *aLeft, const EDA_ITEM *aRight) |
Helper function to be used by the C++ STL sort algorithm for sorting a STL container of EDA_ITEM pointers. | |
Public Attributes | |
double | m_LastZoomLevel |
last value for the zoom level, useful in Eeschema when changing the current displayed sheet to reuse the same zoom level when back to the sheet using this screen | |
VECTOR2I | m_DrawOrg |
offsets for drawing the circuit on the screen | |
VECTOR2D | m_LocalOrigin |
Relative Screen cursor coordinate (on grid) in user units. | |
VECTOR2I | m_StartVisu |
Coordinates in drawing units of the current view position (upper left corner of device) | |
bool | m_Center |
Center on screen. | |
VECTOR2D | m_ScrollCenter |
Current scroll center point in logical units. | |
const KIID | m_Uuid |
Static Public Attributes | |
static wxString | m_DrawingSheetFileName |
the name of the drawing sheet file, or empty to use the default drawing sheet | |
Protected Member Functions | |
bool | Matches (const wxString &aText, const EDA_SEARCH_DATA &aSearchData) const |
Compare aText against search criteria in aSearchData. | |
Protected Attributes | |
int | m_pageCount |
The number of BASE_SCREEN objects in this design. | |
int | m_virtualPageNumber |
An integer based page number used for printing a range of pages. | |
wxString | m_pageNumber |
A user defined string page number used for printing and plotting. | |
EDA_ITEM_FLAGS | m_flags |
EDA_ITEM * | m_parent |
Linked list: Link (parent struct) | |
bool | m_forceVisible |
Private Member Functions | |
bool | doIsJunction (const VECTOR2I &aPosition, bool aBreakCrossings, bool *aHasExplicitJunctionDot, bool *aHasBusEntry) const |
void | clearLibSymbols () |
size_t | getLibSymbolNameMatches (const SCH_SYMBOL &aSymbol, std::vector< wxString > &aMatches) |
Return a list of potential library symbol matches for aSymbol. | |
Private Attributes | |
friend | SCH_EDIT_FRAME |
friend | SCH_IO_KICAD_SEXPR_PARSER |
friend | SCH_IO_KICAD_SEXPR |
friend | SCH_IO_ALTIUM |
wxString | m_fileName |
int | m_fileFormatVersionAtLoad |
int | m_refCount |
std::vector< SCH_SHEET_PATH > | m_clientSheetPathList |
The list of sheet paths sharing this screen. | |
PAGE_INFO | m_paper |
TITLE_BLOCK | m_titles |
VECTOR2I | m_aux_origin |
EE_RTREE | m_rtree |
int | m_modification_sync |
bool | m_zoomInitialized |
bool | m_isReadOnly |
Read only status of the screen file. | |
bool | m_fileExists |
std::set< std::shared_ptr< BUS_ALIAS >, BusAliasCmp > | m_aliases |
List of bus aliases stored in this screen. | |
std::map< wxString, LIB_SYMBOL * > | m_libSymbols |
Library symbols required for this schematic. | |
std::vector< SCH_SYMBOL_INSTANCE > | m_symbolInstances |
The list of symbol instances loaded from the schematic file. | |
std::vector< SCH_SHEET_INSTANCE > | m_sheetInstances |
KIID | m_uuid |
A unique identifier for each schematic file. | |
bool | m_flagModified |
Indicates current drawing has been modified. | |
KICAD_T | m_structType |
Run time identification, keep private so it can never be changed after a ctor sets it. | |
bool | m_isSCH_ITEM |
bool | m_isBOARD_ITEM |
VIEW_ITEM_DATA * | m_viewPrivData |
double | m_forcedTransparency |
Additional transparency for diff'ing items. | |
Definition at line 90 of file sch_screen.h.
SCH_SCREEN::SCH_SCREEN | ( | EDA_ITEM * | aParent = nullptr | ) |
Definition at line 74 of file sch_screen.cpp.
References PAGE_INFO::GetSizeIU(), BASE_SCREEN::InitDataPoints(), EDA_IU_SCALE::IU_PER_MILS, BASE_SCREEN::m_Center, m_LastZoomLevel, m_modification_sync, m_paper, m_refCount, m_zoomInitialized, and schIUScale.
SCH_SCREEN::~SCH_SCREEN | ( | ) |
Definition at line 93 of file sch_screen.cpp.
References clearLibSymbols(), and FreeDrawList().
void SCH_SCREEN::AddBusAlias | ( | std::shared_ptr< BUS_ALIAS > | aAlias | ) |
Add a bus alias definition (and transfers ownership of the pointer).
Definition at line 1402 of file sch_screen.cpp.
References m_aliases.
Referenced by CADSTAR_SCH_ARCHIVE_LOADER::loadBusses(), SCH_IO_KICAD_LEGACY::LoadContent(), and SCH_IO_KICAD_SEXPR_PARSER::parseBusAlias().
void SCH_SCREEN::AddLibSymbol | ( | LIB_SYMBOL * | aLibSymbol | ) |
Add aLibSymbol to the library symbol map.
The symbol is mapped to the result of LIB_ID::Format(). If a symbol is already mapped, the existing symbol is replaced with aLibSymbol. The screen object takes ownership of the pointer.
aLibSymbol | A pointer the LIB_SYMBOL to be added to the symbol map. |
Definition at line 1362 of file sch_screen.cpp.
References LIB_ID::Format(), LIB_SYMBOL::GetLibId(), m_libSymbols, and UTF8::wx_str().
Referenced by SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
bool SCH_SCREEN::AllSymbolDefaultInstancesNotSet | ( | ) |
Check all symbol default instance to see if they are not set yet.
void SCH_SCREEN::Append | ( | SCH_ITEM * | aItem, |
bool | aUpdateLibSymbol = true |
||
) |
Definition at line 153 of file sch_screen.cpp.
References LIB_SYMBOL::Flatten(), LIB_SYMBOL::GetDrawItems(), SCH_SYMBOL::GetLibId(), getLibSymbolNameMatches(), SCH_SYMBOL::GetLibSymbolRef(), LIB_SYMBOL::GetName(), SCH_SYMBOL::GetSchSymbolLibraryName(), LIB_ID::GetUniStringLibItemName(), EE_RTREE::insert(), m_libSymbols, m_modification_sync, m_rtree, SCH_FIELD_T, SCH_SHEET_PIN_T, SCH_SYMBOL_T, LIB_SYMBOL::SetLibId(), SCH_SYMBOL::SetLibSymbol(), LIB_SYMBOL::SetName(), EDA_ITEM::SetParent(), SCH_SYMBOL::SetSchSymbolLibraryName(), MULTIVECTOR< T, FIRST_TYPE_VAL, LAST_TYPE_VAL >::sort(), and EDA_ITEM::Type().
Referenced by SCH_IO_EAGLE::addBusEntries(), SCH_IO_EAGLE::addImplicitConnections(), SCH_IO_ALTIUM::AddTextBox(), SCH_BASE_FRAME::AddToScreen(), Append(), SCH_IO_LTSPICE_PARSER::CreateArc(), SCH_IO_LTSPICE_PARSER::CreateBusEntry(), SCH_IO_LTSPICE_PARSER::CreateCircle(), SCH_IO_LTSPICE_PARSER::CreateKicadSCH_ITEMs(), SCH_IO_LTSPICE_PARSER::CreateKicadSYMBOLs(), SCH_IO_LTSPICE_PARSER::CreateLine(), SCH_IO_LTSPICE_PARSER::CreateLines(), SCH_IO_LTSPICE_PARSER::CreatePin(), SCH_IO_LTSPICE_PARSER::CreateRect(), SCH_IO_LTSPICE_PARSER::CreateWire(), SCH_IO_LTSPICE_PARSER::CreateWires(), CONNECTION_GRAPH::ercCheckBusToBusConflicts(), CONNECTION_GRAPH::ercCheckBusToBusEntryConflicts(), CONNECTION_GRAPH::ercCheckBusToNetConflicts(), CONNECTION_GRAPH::ercCheckDanglingWireEndpoints(), CONNECTION_GRAPH::ercCheckFloatingWires(), CONNECTION_GRAPH::ercCheckHierSheets(), CONNECTION_GRAPH::ercCheckLabels(), CONNECTION_GRAPH::ercCheckMultipleDrivers(), CONNECTION_GRAPH::ercCheckNoConnects(), CONNECTION_GRAPH::ercCheckSingleGlobalLabel(), CADSTAR_SCH_ARCHIVE_LOADER::loadBusses(), SCH_IO_KICAD_LEGACY::LoadContent(), CADSTAR_SCH_ARCHIVE_LOADER::loadHierarchicalSheetPins(), SCH_IO_EAGLE::loadInstance(), SCH_IO_EAGLE::loadModuleInstance(), SCH_IO_EAGLE::loadSchematic(), LoadSchematic(), SCH_IO_EASYEDAPRO::LoadSchematicFile(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbolInstances(), SCH_IO_EAGLE::loadSegments(), SCH_IO_EAGLE::loadSheet(), CADSTAR_SCH_ARCHIVE_LOADER::loadSheetAndChildSheets(), SCH_EDIT_FRAME::LoadSheetFromFile(), DIALOG_ERC::OnRunERCClick(), DIALOG_SHEET_PROPERTIES::onSheetFilenameChanged(), SCH_IO_ALTIUM::ParseArc(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseBus(), SCH_IO_ALTIUM::ParseBusEntry(), SCH_IO_ALTIUM::ParseCircle(), SCH_IO_ALTIUM::ParseComponent(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), SCH_IO_ALTIUM::ParseHarnessConnector(), SCH_IO_ALTIUM::ParseHarnessPort(), SCH_IO_ALTIUM::ParseImage(), SCH_IO_ALTIUM::ParseJunction(), SCH_IO_ALTIUM::ParseLabel(), SCH_IO_ALTIUM::ParseLine(), SCH_IO_ALTIUM::ParseNetLabel(), SCH_IO_ALTIUM::ParseNoERC(), SCH_IO_ALTIUM::ParsePieChart(), SCH_IO_ALTIUM::ParsePolygon(), SCH_IO_ALTIUM::ParsePolyline(), SCH_IO_ALTIUM::ParsePort(), SCH_IO_ALTIUM::ParsePowerPort(), SCH_IO_ALTIUM::ParseRectangle(), SCH_IO_ALTIUM::ParseRoundRectangle(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_IO_ALTIUM::ParseSheetSymbol(), SCH_IO_ALTIUM::ParseSignalHarness(), SCH_IO_ALTIUM::ParseWire(), SCH_EDITOR_CONTROL::Paste(), DIALOG_CHANGE_SYMBOLS::processSymbols(), SCH_COMMIT::pushSchEdit(), SCHEMATIC::ResolveERCExclusionsPostUpdate(), SCH_COMMIT::Revert(), SCH_EDIT_FRAME::SaveSelectionAsDesignBlock(), ERC_TESTER::TestMissingNetclasses(), ERC_TESTER::TestMissingUnits(), ERC_TESTER::TestMultiunitFootprints(), ERC_TESTER::TestMultUnitPinConflicts(), ERC_TESTER::TestTextVars(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), Update(), and UpdateSymbolLinks().
void SCH_SCREEN::Append | ( | SCH_SCREEN * | aScreen | ) |
Copy the contents of aScreen into this SCH_SCREEN object.
aScreen | is the screen to append to this one. |
Definition at line 265 of file sch_screen.cpp.
|
inline |
Definition at line 533 of file sch_screen.h.
References m_uuid.
Referenced by SCH_EDIT_FRAME::SaveProject().
bool SCH_SCREEN::CheckIfOnDrawList | ( | const SCH_ITEM * | aItem | ) | const |
Definition at line 386 of file sch_screen.cpp.
References EE_RTREE::contains(), and m_rtree.
Referenced by SCH_EDITOR_CONTROL::Paste(), SCH_PRINTOUT::PrintPage(), SCH_COMMIT::pushSchEdit(), and EE_SELECTION_TOOL::SyncSelection().
|
static |
Definition at line 147 of file sch_screen.cpp.
References SCH_SCREEN_T, and EDA_ITEM::Type().
void SCH_SCREEN::Clear | ( | bool | aFree = true | ) |
Delete all draw items and clears the project settings.
Definition at line 278 of file sch_screen.cpp.
References EE_RTREE::clear(), TITLE_BLOCK::Clear(), clearLibSymbols(), FreeDrawList(), BASE_SCREEN::m_pageCount, m_rtree, m_titles, and BASE_SCREEN::m_virtualPageNumber.
Referenced by Append(), SCH_EDIT_FRAME::doCloseWindow(), and SCH_EDITOR_CONTROL::Paste().
void SCH_SCREEN::ClearAnnotation | ( | SCH_SHEET_PATH * | aSheetPath, |
bool | aResetPrefix | ||
) |
Clear the annotation for the symbols in aSheetPath on the screen.
[in] | aSheetPath | The sheet path of the symbol annotation to clear. If NULL then the entire hierarchy is cleared. |
[in] | aResetPrefix | The annotation prefix ('R', 'U', etc.) should be reset to the symbol library prefix. |
Definition at line 1086 of file sch_screen.cpp.
References SCH_SYMBOL::ClearAnnotation(), Items(), and SCH_SYMBOL_T.
Referenced by SCH_SCREENS::ClearAnnotationOfNewSheetPaths(), and SCH_EDIT_TOOL::Properties().
|
inlineinherited |
Definition at line 123 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::ClearFlags().
Referenced by FOOTPRINT_DIFF_WIDGET::DisplayDiff(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), PL_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), PCB_TEST_SELECTION_TOOL::unhighlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inline |
Remove all bus alias definitions.
Definition at line 508 of file sch_screen.h.
References m_aliases.
void SCH_SCREEN::ClearDrawingState | ( | ) |
Clear the state flags of all the items in the screen.
Definition at line 1002 of file sch_screen.cpp.
References Items().
Referenced by SCH_EDIT_FRAME::OpenProjectFiles(), and EE_SELECTION_TOOL::SelectConnection().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL.
Definition at line 141 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetEditFlags().
Referenced by BOARD::Add(), FOOTPRINT::Add(), LIB_SYMBOL::ClearEditFlags(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawTable(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), PL_DRAWING_TOOLS::PlaceItem(), BOARD_COMMIT::Push(), SCH_EDIT_FRAME::PutDataInPreviousState(), BOARD_COMMIT::Revert(), SCH_ITEM::SwapFlags(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 129 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PNS_KICAD_IFACE::AddItem(), PNS_KICAD_IFACE_GENERATOR::AddItem(), SCH_MOVE_TOOL::AlignToGrid(), SCH_EDIT_TOOL::BreakWire(), FOOTPRINT::BuildCourtyardCaches(), EDA_ITEM::ClearBrightened(), EDA_ITEM::ClearEditFlags(), EDA_ITEM::ClearSelected(), EDA_ITEM::ClearTempFlags(), ConnectBoardShapes(), SYMBOL_EDITOR_EDIT_TOOL::Copy(), MULTICHANNEL_TOOL::copyRuleAreaContents(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), SYMBOL_EDITOR_PIN_TOOL::CreateImagePins(), MICROWAVE_TOOL::createMicrowaveInductor(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::SCH_PAINTER::draw(), SCH_ITEM::Duplicate(), PCB_TUNING_PATTERN::EditPush(), PCB_TUNING_PATTERN::EditRevert(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_SELECTION_TOOL::ExitGroup(), SCH_IO_KICAD_SEXPR::Format(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), EE_SELECTION_TOOL::GuessSelectionCandidates(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::Init(), EE_COLLECTOR::Inspect(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), SCH_COMMIT::pushSchEdit(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_SELECTION_TOOL::RebuildSelection(), PAD::Recombine(), GERBVIEW_FRAME::RemapLayers(), DRC_TEST_PROVIDER_DISALLOW::Run(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_IO_KICAD_SEXPR_LIB_CACHE::savePin(), EE_SELECTION_TOOL::selectMultiple(), EDA_ITEM::SetIsShownAsBitmap(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), EE_SELECTION_TOOL::unhighlight(), and SCOPED_FLAGS_CLEANER::~SCOPED_FLAGS_CLEANER().
|
private |
Definition at line 109 of file sch_screen.cpp.
References m_libSymbols.
Referenced by Clear(), UpdateSymbolLinks(), and ~SCH_SCREEN().
|
inlineinherited |
Definition at line 122 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and SELECTED.
Referenced by PCB_POINT_EDITOR::addCorner(), FOOTPRINT_DIFF_WIDGET::DisplayDiff(), EDIT_TOOL::Duplicate(), LIB_SYMBOL::LIB_SYMBOL(), ARRAY_TOOL::onDialogClosed(), SCH_COMMIT::Revert(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_COMMIT::Stage(), PL_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), PCB_TEST_SELECTION_TOOL::unhighlightInternal(), and GERBVIEW_SELECTION_TOOL::unselectVisually().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL.
Definition at line 153 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetTempFlags().
Referenced by LIB_SYMBOL::ClearTempFlags(), SCH_EDIT_FRAME::PutDataInPreviousState(), and SCH_ITEM::SwapFlags().
|
virtualinherited |
Create a duplicate of this item with linked list members set to NULL.
The default version will return NULL in release builds and likely crash the program. In debug builds, a warning message indicating the derived class has not implemented cloning. This really should be a pure virtual function. Due to the fact that there are so many objects derived from EDA_ITEM, the decision was made to return NULL until all the objects derived from EDA_ITEM implement cloning. Once that happens, this function should be made pure.
Reimplemented in SCH_BITMAP, SCH_BUS_WIRE_ENTRY, SCH_BUS_BUS_ENTRY, SCH_FIELD, SCH_JUNCTION, SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_RULE_AREA, SCH_SHAPE, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TABLE, SCH_TABLECELL, SCH_TEXT, SCH_TEXTBOX, KIGFX::ORIGIN_VIEWITEM, KIGFX::ANCHOR_DEBUG, KIGFX::SNAP_INDICATOR, FOOTPRINT, PCB_TUNING_PATTERN, NETINFO_ITEM, PAD, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_FIELD, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TABLECELL, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, and ZONE.
Definition at line 85 of file eda_item.cpp.
References EDA_ITEM::GetClass().
Referenced by BOARD_ITEM::Duplicate(), SCH_ITEM::Duplicate(), LIB_SYMBOL::LIB_SYMBOL(), BOARD_COMMIT::MakeImage(), SCH_COMMIT::makeImage(), new_clone(), PCB_POINT_EDITOR::OnSelectionChange(), LIB_SYMBOL::operator=(), SCH_IO_LIB_CACHE::removeSymbol(), SCH_EDIT_FRAME::SaveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_DRAWING_TOOLS::TwoClickPlace(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
size_t SCH_SCREEN::CountConnectedItems | ( | const VECTOR2I & | aPos, |
bool | aTestJunctions | ||
) | const |
Definition at line 1072 of file sch_screen.cpp.
References Items(), and SCH_JUNCTION_T.
void SCH_SCREEN::DecRefCount | ( | ) |
Definition at line 132 of file sch_screen.cpp.
References m_refCount.
Referenced by SCH_SHEET::SetScreen(), and SCH_SHEET::~SCH_SHEET().
void SCH_SCREEN::DeleteItem | ( | SCH_ITEM * | aItem | ) |
Removes aItem from the linked list and deletes the object.
If aItem is a schematic sheet label, it is removed from the screen associated with the sheet that contains the label to be deleted.
[in] | aItem | The schematic object to be deleted from the screen. |
Definition at line 361 of file sch_screen.cpp.
References SCH_SHEET_PIN::GetParent(), Remove(), SCH_SHEET::RemovePin(), SCH_MARKER_T, SCH_SHEET_PIN_T, BASE_SCREEN::SetContentModified(), and EDA_ITEM::Type().
|
virtualinherited |
Deserializes the given protobuf message into this object.
aContainer | is an Any which should have a concrete type matching this object |
Reimplemented in SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, EDA_SHAPE, EDA_TEXT, BOARD_STACKUP, FOOTPRINT, PAD, PADSTACK, PCB_DIMENSION_BASE, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_FIELD, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, and ZONE.
Definition at line 30 of file serializable.cpp.
|
private |
void SCH_SCREEN::EnsureAlternateReferencesExist | ( | ) |
For screens shared by many sheetpaths (complex hierarchies): to be able to clear or modify any reference related sharing this screen (i.e.
the list of symbols), an entry for each screen path must exist. This function creates missing entries, using as default reference the current reference field and unit number Note: m_clientSheetPathList must be up to date ( built by SCH_SCREENS::BuildClientSheetPathList() )
Definition at line 1098 of file sch_screen.cpp.
References SCH_SYMBOL::AddSheetPathReferenceEntryIfMissing(), GetClientSheetPaths(), Items(), and SCH_SYMBOL_T.
Referenced by SCH_SCREENS::ClearAnnotationOfNewSheetPaths().
|
inline |
Definition at line 149 of file sch_screen.h.
References m_fileExists.
Referenced by SCH_EDIT_FRAME::updateTitle().
void SCH_SCREEN::FixLegacyPowerSymbolMismatches | ( | ) |
Fix legacy power symbols that have mismatched value text fields and invisible power pin names.
Definition at line 1424 of file sch_screen.cpp.
References SCH_SYMBOL::GetAllLibPins(), SCH_SYMBOL::GetLibSymbolRef(), Items(), SCH_SYMBOL_T, and SCH_SYMBOL::SetValueFieldText().
void SCH_SCREEN::FixupEmbeddedData | ( | ) |
After loading a file from disk, the library symbols do not yet contain the full data for their embedded files, only a reference.
This iterates over all lib symbols in the schematic and updates the library symbols with the full data.
Definition at line 1380 of file sch_screen.cpp.
References EMBEDDED_FILES::EMBEDDED_FILE::compressedEncodedData, EMBEDDED_FILES::EMBEDDED_FILE::data_hash, EMBEDDED_FILES::EMBEDDED_FILE::decompressedData, EMBEDDED_FILES::GetEmbeddedFile(), EMBEDDED_FILES::EMBEDDED_FILE::is_valid, m_libSymbols, name, and Schematic().
Referenced by SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
void SCH_SCREEN::FreeDrawList | ( | ) |
Free all the items from the schematic associated with the screen.
This does not delete any sub hierarchies.
Definition at line 297 of file sch_screen.cpp.
References EE_RTREE::begin(), EE_RTREE::clear(), EE_RTREE::end(), and m_rtree.
Referenced by Clear(), and ~SCH_SCREEN().
|
inlineinherited |
Definition at line 119 of file inspectable.h.
References PROPERTY_BASE::get(), PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 99 of file inspectable.h.
References PROPERTY_BASE::getter(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by BOOST_AUTO_TEST_CASE(), CLASS_D_DESC::CLASS_D_DESC(), PROPERTIES_PANEL::getItemValue(), PCBEXPR_VAR_REF::GetValue(), and SCHEMATIC::SCHEMATIC().
|
inlineinherited |
Definition at line 107 of file inspectable.h.
References PROPERTY_BASE::get(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inline |
Definition at line 151 of file sch_screen.h.
References m_aux_origin.
|
virtualinherited |
Return the orthogonal bounding box of this object for display purposes.
This box should be an enclosing perimeter for visible components of this object, and the units should be in the pcb or schematic coordinate system. It is OK to overestimate the size by a few counts.
Reimplemented in LIB_SYMBOL, SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET, SCH_SYMBOL, SCH_TABLE, SCH_TEXT, GBR_LAYOUT, GERBER_DRAW_ITEM, DS_DRAW_ITEM_LINE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_PAGE, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, BOARD, FOOTPRINT, PCB_TUNING_PATTERN, NETINFO_ITEM, PAD, PCB_DIMENSION_BASE, PCB_DIM_CENTER, PCB_GENERATOR, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TARGET, PCB_TEXT, PCB_TRACK, PCB_VIA, ZONE, and DS_DRAW_ITEM_BASE.
Definition at line 77 of file eda_item.cpp.
Referenced by CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), CN_ITEM::BBox(), SCH_EDIT_TOOL::ChangeTextType(), TEST_BOARD_ITEM_FIXTURE::CompareItems(), TEST_EE_ITEM_FIXTURE::CompareItems(), EE_RTREE::contains(), MULTICHANNEL_TOOL::copyRuleAreaContents(), BOARD_COMMIT::dirtyIntersectingZones(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::SCH_PAINTER::drawItemBoundingBox(), SCH_DRAWING_TOOLS::DrawSheet(), enclosedByAreaFunc(), PCB_SELECTION_TOOL::FindItem(), SCH_FIND_REPLACE_TOOL::FindNext(), GetBoundingBoxes(), BOARD_ITEM::GetCenter(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), EE_SELECTION_TOOL::GuessSelectionCandidates(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), API_HANDLER_PCB::handleGetBoundingBox(), PNS_KICAD_IFACE::HideItem(), EE_RTREE::insert(), intersectsAreaFunc(), MarkConnections(), SCH_EDIT_TOOL::Mirror(), SCH_EDIT_FRAME::onNetNavigatorSelection(), DRC_RTREE::QueryColliding(), EE_RTREE::remove(), SCH_EDIT_TOOL::Rotate(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskBridges(), GERBVIEW_SELECTION::ViewBBox(), and EDA_ITEM::ViewBBox().
|
inline |
Definition at line 434 of file sch_screen.h.
References GetLine(), and LAYER_BUS.
Referenced by IsTerminalPoint(), and CONNECTION_GRAPH::updateItemConnectivity().
|
inline |
Return a set of bus aliases defined in this screen.
Definition at line 516 of file sch_screen.h.
References m_aliases.
Referenced by SCH_IO_KICAD_LEGACY::Format(), and SCH_IO_KICAD_SEXPR::Format().
std::vector< SCH_LINE * > SCH_SCREEN::GetBusesAndWires | ( | const VECTOR2I & | aPosition, |
bool | aIgnoreEndpoints = false |
||
) | const |
Return buses and wires passing through aPosition.
aPosition | Position to search for |
aIgnoreEndpoints | If true, ignore wires/buses with end points matching aPosition |
Definition at line 1239 of file sch_screen.cpp.
References SCH_LINE::GetEndPoint(), SCH_LINE::GetStartPoint(), SCH_LINE::IsEndPoint(), IsPointOnSegment(), Items(), and SCH_LINE_T.
Referenced by SCH_EDIT_FRAME::BreakSegments().
|
inlineoverridevirtual |
Return the class name.
Reimplemented from BASE_SCREEN.
Definition at line 122 of file sch_screen.h.
|
inline |
Return the number of times this screen is used.
In the legacy file formats: if this screen is used only once (not a complex hierarchy) the reference field can be used to store the symbol reference. If this screen is used more than once (a complex hierarchy), then symbols must have a full alternate reference management via sheet paths.
In the new schematic file format, all instance data is stored in the root sheet even for simple hierarchies.
Definition at line 177 of file sch_screen.h.
References m_clientSheetPathList.
Referenced by SCH_SCREENS::BuildClientSheetPathList(), EnsureAlternateReferencesExist(), and SCH_EDIT_FRAME::SaveProject().
std::vector< VECTOR2I > SCH_SCREEN::GetConnections | ( | ) | const |
Collect a unique list of all possible connection points in the schematic.
Definition at line 1262 of file sch_screen.cpp.
References IS_DELETED, IS_MOVING, and Items().
Referenced by SCH_LINE_WIRE_BUS_TOOL::finishSegments(), and GetNeededJunctions().
|
inlineinherited |
Definition at line 133 of file eda_item.h.
References IS_BROKEN, IS_CHANGED, IS_MOVING, IS_NEW, IS_PASTED, EDA_ITEM::m_flags, and STRUCT_DELETED.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), EDA_ITEM::ClearEditFlags(), SCH_EDIT_FRAME::DeleteJunction(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_EDIT_TOOL::editFieldText(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), SCH_DRAWING_TOOLS::findWire(), SCH_SYMBOL::GetMsgPanelInfo(), SELECTION_CONDITIONS::Idle(), SELECTION_CONDITIONS::IdleSelection(), PCB_POINT_EDITOR::OnSelectionChange(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), SCH_EDIT_FRAME::SelectUnit(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), SCH_ITEM::SwapFlags(), DIALOG_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLE_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLECELL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_REFERENCE_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), and DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL, SCHEMATIC, BOARD, and FOOTPRINT.
Definition at line 444 of file eda_item.h.
Referenced by PCB_IO_KICAD_SEXPR_PARSER::Parse().
|
inline |
Definition at line 128 of file sch_screen.h.
References m_fileFormatVersionAtLoad.
Referenced by EESCHEMA_HELPERS::LoadSchematic(), SCH_EDIT_FRAME::LoadSheetFromFile(), SCH_EDIT_FRAME::OpenProjectFiles(), and SCH_IO_KICAD_SEXPR_PARSER::parseSchSheetInstances().
|
inline |
Definition at line 143 of file sch_screen.h.
References m_fileName.
Referenced by SCH_EDIT_FRAME::canCloseWindow(), SCH_EDIT_FRAME::checkForNoFullyDefinedLibIds(), SCH_EDIT_FRAME::CheckSheetForRecursion(), KIGFX::SCH_VIEW::DisplaySheet(), SCH_EDIT_FRAME::doAutoSave(), EESCHEMA_JOBS_HANDLER::getDrawingSheetProxyView(), SCHEMATIC::GetFileName(), DIALOG_PLOT_SCHEMATIC::getOutputPath(), SCH_IO_KICAD_LEGACY::loadHeader(), SCH_IO_KICAD_SEXPR::loadHierarchy(), SCH_EDIT_FRAME::LoadSheetFromFile(), NETLIST_EXPORTER_XML::makeDesignHeader(), SCH_SHEET_PATH::MakeFilePathRelativeToParentSheet(), DIALOG_SHEET_PROPERTIES::onSheetFilenameChanged(), SCH_EDITOR_CONTROL::Paste(), SCH_SHEET_PATH::PathHumanReadable(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), SCH_PLOTTER::plotOneSheetSVG(), SCH_PRINTOUT::PrintPage(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_FRAME::SaveProject(), SCH_EDIT_FRAME::saveProjectSettings(), SCH_EDIT_FRAME::saveSchematicFile(), SCH_SHEET::SearchHierarchy(), SCH_SHEET::Similarity(), DIALOG_SHEET_PROPERTIES::TransferDataFromWindow(), SCH_EDIT_FRAME::updateAutoSaveFile(), and SCH_EDIT_FRAME::updateTitle().
|
inlineinherited |
Definition at line 130 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by BACK_ANNOTATE::applyChangelist(), BuildBoardPolygonOutlines(), collidesWithArea(), SCH_TABLE::DeleteMarkedCells(), PCB_TABLE::DeleteMarkedCells(), doConvertOutlineToPolygon(), PL_EDIT_TOOL::DoDelete(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::SCH_PAINTER::draw(), PCB_TUNING_PATTERN::EditPush(), PCB_TUNING_PATTERN::EditRevert(), enclosedByAreaFunc(), DRC_ENGINE::EvalRules(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), intersectsAreaFunc(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), LIB_SYMBOL::LIB_SYMBOL(), EE_SELECTION_TOOL::Main(), BOARD_INSPECTION_TOOL::makeDRCEngine(), CONVERT_TOOL::makePolysFromChainedSegs(), DIALOG_DRC::OnDRCItemSelected(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), LIB_SYMBOL::operator=(), BOARD_COMMIT::Push(), PAD::Recombine(), BOARD::Remove(), FOOTPRINT::Remove(), SCH_EDIT_FRAME::SaveCopyInUndoList(), SCH_IO_KICAD_SEXPR::saveTable(), DS_DATA_ITEM::SyncDrawItems(), DS_DATA_ITEM_POLYGONS::SyncDrawItems(), DS_DATA_ITEM_BITMAP::SyncDrawItems(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), and PCB_TUNING_PATTERN::Update().
|
inlinevirtualinherited |
Similar to GetPosition, but allows items to return their visual center rather than their anchor.
Reimplemented in BOARD, PCB_SHAPE, PCB_TRACK, and PCB_ARC.
Definition at line 250 of file eda_item.h.
References EDA_ITEM::GetPosition().
Referenced by SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), and DRAWING_TOOL::PlaceTuningPattern().
|
inlineinherited |
Definition at line 158 of file view_item.h.
Referenced by KIGFX::SCH_PAINTER::draw(), EDA_ITEM::EDA_ITEM(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), and EDA_ITEM::operator=().
|
virtualinherited |
Reimplemented in SCH_FIELD, SCH_LINE, SCH_PIN, SCH_RULE_AREA, SCH_TEXT, PCB_TUNING_PATTERN, PCB_SHAPE, PCB_TABLECELL, PCB_TEXTBOX, PCB_TRACK, and ZONE.
Definition at line 332 of file eda_item.cpp.
References EDA_ITEM::GetTypeDesc().
Referenced by API_HANDLER_PCB::createItemForType(), API_HANDLER_SCH::createItemForType(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), SCH_ITEM::getSymbolEditorMsgPanelInfo(), PROPERTIES_PANEL::rebuildProperties(), and DIALOG_SHAPE_PROPERTIES::TransferDataFromWindow().
void SCH_SCREEN::GetHierarchicalItems | ( | std::vector< SCH_ITEM * > * | aItems | ) | const |
Add all schematic sheet and symbol objects in the screen to aItems.
[out] | aItems | Hierarchical item list to fill. |
Definition at line 1114 of file sch_screen.cpp.
References Items(), SCH_LABEL_LOCATE_ANY_T, SCH_SHEET_T, and SCH_SYMBOL_T.
SCH_ITEM * SCH_SCREEN::GetItem | ( | const VECTOR2I & | aPosition, |
int | aAccuracy = 0 , |
||
KICAD_T | aType = SCH_LOCATE_ANY_T |
||
) | const |
Check aPosition within a distance of aAccuracy for items of type aFilter.
[in] | aPosition | Position in drawing units. |
aAccuracy | The maximum distance within Position to check for an item. | |
aType | The type of item to find. |
Definition at line 392 of file sch_screen.cpp.
References BOX2< Vec >::Inflate(), Items(), and BOX2< Vec >::SetOrigin().
Referenced by SCH_EDIT_TOOL::DoDelete(), IsTerminalPoint(), MarkConnections(), and SCH_DRAWING_TOOLS::SingleClickPlace().
|
virtualinherited |
Return a user-visible description string of this item.
This description is used in disambiguation menus, the message panel, ERC/DRC reports, etc.
The default version of this function raises an assertion in the debug mode and returns a string to indicate that it was not overridden to provide the object specific text.
aLong | indicates a long string is acceptable |
Reimplemented in SCH_BITMAP, SCH_BUS_WIRE_ENTRY, SCH_BUS_BUS_ENTRY, SCH_FIELD, SCH_JUNCTION, SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_RULE_AREA, SCH_SHAPE, SCH_SHEET, DELETED_SHEET_ITEM, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TABLE, SCH_TABLECELL, SCH_TEXT, SCH_TEXTBOX, GERBER_DRAW_ITEM, DELETED_BOARD_ITEM, DS_DRAW_ITEM_LINE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_PAGE, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, BOARD, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_DIMENSION_BASE, PCB_FIELD, PCB_GENERATOR, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TABLECELL, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 111 of file eda_item.cpp.
References EDA_ITEM::GetClass().
Referenced by CONNECTION_GRAPH::collectAllDriverValues(), DIALOG_GROUP_PROPERTIES::DoAddMember(), SELECTION_TOOL::doSelectionMenu(), DRC_ENGINE::EvalRules(), BOARD_INSPECTION_TOOL::getItemDescription(), RC_ITEM::GetJsonViolation(), SCH_MARKER::GetMsgPanelInfo(), PCB_MARKER::GetMsgPanelInfo(), ERC_TREE_MODEL::GetValue(), RC_TREE_MODEL::GetValue(), PNS::SHOVE::shoveIteration(), RC_ITEM::ShowReport(), DIALOG_POSITION_RELATIVE::updateAnchorInfo(), and PCB_CONTROL::UpdateMessagePanel().
SCH_LABEL_BASE * SCH_SCREEN::GetLabel | ( | const VECTOR2I & | aPosition, |
int | aAccuracy = 0 |
||
) | const |
Return a label item located at aPosition.
[in] | aPosition | The VECTOR2I to test for label items. |
aAccuracy | Amount to inflate the item hit test bounding box. |
Definition at line 1338 of file sch_screen.cpp.
References Items(), SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, and SCH_LABEL_T.
Referenced by IsTerminalPoint().
SPIN_STYLE SCH_SCREEN::GetLabelOrientationForPoint | ( | const VECTOR2I & | aPosition, |
SPIN_STYLE | aDefaultOrientation, | ||
const SCH_SHEET_PATH * | aSheet | ||
) | const |
Definition at line 515 of file sch_screen.cpp.
References SCH_LINE::Angle(), EDA_ANGLE::AsDegrees(), SPIN_STYLE::BOTTOM, SCH_SYMBOL::GetPins(), GetPinSpinStyle(), Items(), SPIN_STYLE::LEFT, EDA_ANGLE::Normalize90(), pin, SPIN_STYLE::RIGHT, SCH_BUS_WIRE_ENTRY_T, SCH_LINE_T, SCH_SYMBOL_T, STRUCT_DELETED, SPIN_STYLE::UP, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SCH_EDIT_FRAME::AutoRotateItem().
|
private |
Return a list of potential library symbol matches for aSymbol.
When and existing library symbol named with the full LIB_ID object is found, there may be more potential matches if the SCH_SCREEN::Append() method need to create an alternate symbol due to differences from the original symbol. This process creates a new library symbol name by adding a "_#" suffix to the existing LIB_ID item name.
[in] | aSymbol | is the schematic symbol to search for potential library symbol matches. |
[out] | aMatches | contains library cache names of all of the potential matches. |
Definition at line 1444 of file sch_screen.cpp.
References SCH_SYMBOL::GetLibId(), LIB_ID::GetUniStringLibId(), LIB_ID::GetUniStringLibItemName(), and m_libSymbols.
Referenced by Append().
|
inline |
Fetch a list of unique LIB_SYMBOL object pointers required to properly render each SCH_SYMBOL in this schematic.
Definition at line 480 of file sch_screen.h.
References m_libSymbols.
Referenced by SCH_EDIT_FRAME::CommonSettingsChanged(), NETLIST_EXPORTER_BASE::findNextSymbol(), SCH_IO_KICAD_SEXPR::Format(), SCH_EDIT_FRAME::HardRedraw(), and SCH_EDITOR_CONTROL::Paste().
SCH_LINE * SCH_SCREEN::GetLine | ( | const VECTOR2I & | aPosition, |
int | aAccuracy = 0 , |
||
int | aLayer = LAYER_NOTES , |
||
SCH_LINE_TEST_T | aSearchType = ENTIRE_LENGTH_T |
||
) | const |
Return a line item located at aPosition.
[in] | aPosition | The VECTOR2I to test for a line item. |
aAccuracy | Amount to inflate the item hit test bounding box. | |
aLayer | The layer the line is drawn upon. | |
aSearchType | Additional line test criteria. |
Definition at line 1202 of file sch_screen.cpp.
References END_POINTS_ONLY_T, ENTIRE_LENGTH_T, EXCLUDE_END_POINTS_T, Items(), and SCH_LINE_T.
Referenced by GetBus(), GetWire(), IsTerminalPoint(), and SCH_LINE_WIRE_BUS_TOOL::startSegments().
|
virtualinherited |
Return a pointer to an image to be used in menus.
The default version returns the right arrow image. Override this function to provide object specific menu images.
Reimplemented in SCH_BITMAP, SCH_BUS_WIRE_ENTRY, SCH_BUS_BUS_ENTRY, SCH_FIELD, SCH_JUNCTION, SCH_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TABLE, SCH_TEXT, SCH_TEXTBOX, GERBER_DRAW_ITEM, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 291 of file eda_item.cpp.
Referenced by SELECTION_TOOL::doSelectionMenu().
|
inlinevirtualinherited |
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes.
aFrame | is the EDA_DRAW_FRAME that displays the message panel |
aList | is the list to populate. |
Reimplemented in SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_MARKER, SCH_PIN, SCH_RULE_AREA, SCH_SHAPE, SCH_SHEET, SCH_SYMBOL, SCH_TABLE, SCH_TABLECELL, SCH_TEXT, SCH_TEXTBOX, GERBER_DRAW_ITEM, DS_DRAW_ITEM_BASE, BOARD, FOOTPRINT, PCB_TUNING_PATTERN, NETINFO_ITEM, PAD, PCB_DIMENSION_BASE, PCB_DIM_ALIGNED, PCB_DIM_LEADER, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TABLECELL, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 203 of file eda_item.h.
Referenced by SCH_SHAPE::GetMsgPanelInfo(), EDA_DRAW_FRAME::SetMsgPanel(), EE_INSPECTION_TOOL::UpdateMessagePanel(), GERBVIEW_CONTROL::UpdateMessagePanel(), PL_EDITOR_CONTROL::UpdateMessagePanel(), PCB_CONTROL::UpdateMessagePanel(), and FOOTPRINT_WIZARD_FRAME::UpdateMsgPanel().
std::vector< VECTOR2I > SCH_SCREEN::GetNeededJunctions | ( | const std::deque< EDA_ITEM * > & | aItems | ) | const |
Return the unique set of points belonging to aItems where a junction is needed.
aItems | List of objects to check |
Definition at line 1288 of file sch_screen.cpp.
References SCH_ITEM::GetConnectionPoints(), GetConnections(), SCH_LINE::GetEndPoint(), SCH_LINE::GetStartPoint(), SCH_ITEM::IsConnectable(), IsPointOnSegment(), SCH_LINE_T, and EDA_ITEM::Type().
Referenced by SCH_LINE_WIRE_BUS_TOOL::AddJunctionsIfNeeded().
|
inlineinherited |
Definition at line 72 of file base_screen.h.
References BASE_SCREEN::m_pageCount.
Referenced by KIGFX::SCH_VIEW::DisplaySheet(), SCH_IO_KICAD_LEGACY::Format(), EESCHEMA_JOBS_HANDLER::getDrawingSheetProxyView(), DIALOG_EESCHEMA_PAGE_SETTINGS::onTransferDataToWindow(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), SCH_PLOTTER::plotOneSheetSVG(), EDA_DRAW_FRAME::PrintDrawingSheet(), PCB_EDIT_FRAME::SetPageSettings(), and DIALOG_PAGES_SETTINGS::UpdateDrawingSheetExample().
|
inherited |
Definition at line 70 of file base_screen.cpp.
References BASE_SCREEN::m_pageNumber, and BASE_SCREEN::m_virtualPageNumber.
Referenced by KIGFX::SCH_VIEW::DisplaySheet(), EESCHEMA_JOBS_HANDLER::getDrawingSheetProxyView(), SCH_PRINTOUT::OnPrintPage(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), SCH_PLOTTER::plotOneSheetSVG(), EDA_DRAW_FRAME::PrintDrawingSheet(), PCB_EDIT_FRAME::SetPageSettings(), and DIALOG_PAGES_SETTINGS::UpdateDrawingSheetExample().
|
inline |
Definition at line 130 of file sch_screen.h.
References m_paper.
Referenced by SCH_PLOTTER::createHPGLFiles(), SCH_PLOTTER::createPSFiles(), KIGFX::SCH_VIEW::DisplaySheet(), SYMBOL_EDITOR_CONTROL::ExportSymbolAsSVG(), SCH_IO_KICAD_LEGACY::Format(), SCH_IO_KICAD_SEXPR::Format(), SCH_EDIT_FRAME::GetDocumentExtents(), EESCHEMA_JOBS_HANDLER::getDrawingSheetProxyView(), SCH_BASE_FRAME::GetPageSettings(), SCH_BASE_FRAME::GetPageSizeIU(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), SCH_IO_EAGLE::loadSchematic(), SCH_IO_EAGLE::loadSheet(), SCH_IO_LTSPICE_PARSER::Parse(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetSVG(), SYMBOL_EDIT_FRAME::PrintPage(), SCH_PRINTOUT::PrintPage(), KIGFX::SCH_VIEW::ResizeSheetWorkingArea(), SCH_PLOTTER::setupPlotPagePDF(), SYMBOL_EDIT_FRAME::SVGPlotSymbol(), and DIALOG_PRINT_USING_PRINTER::TransferDataToWindow().
|
inlineinherited |
Definition at line 103 of file eda_item.h.
References EDA_ITEM::m_parent.
Referenced by SCH_EDIT_TOOL::AutoplaceFields(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), EDIT_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), SCH_EDIT_TOOL::EditField(), SCH_EDIT_TOOL::editFieldText(), SCH_IO_KICAD_SEXPR::Format(), SCH_TABLECELL::GetColumn(), SCH_FIELD::GetFieldColor(), getInferredSymbols(), SCH_ITEM::GetParentSymbol(), SCH_TABLECELL::GetRow(), EE_SELECTION_TOOL::GuessSelectionCandidates(), EE_SELECTION_TOOL::highlight(), highlightNet(), SCH_FIELD::HitTest(), SCH_PIN::IsStacked(), SCH_EDIT_TOOL::JustifyText(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), EE_SELECTION_TOOL::Main(), SCH_EDIT_TOOL::Mirror(), SCH_MOVE_TOOL::moveItem(), SCH_EDIT_FRAME::onNetNavigatorSelection(), SCH_FIELD::OnScintillaCharAdded(), SCH_COMMIT::parentObject(), SCH_FIELD::Print(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), SCH_EDIT_TOOL::Properties(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_SELECTION_TOOL::RebuildSelection(), SCH_BASE_FRAME::RefreshZoomDependentItems(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), EE_SELECTION_TOOL::RequestSelection(), SCH_COMMIT::Revert(), SCH_EDIT_TOOL::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_ITEM::Schematic(), Schematic(), SCHEMATIC::SCHEMATIC(), SCH_SHEET::SearchHierarchy(), PCB_SELECTION_TOOL::select(), SCH_MARKER::SerializeToString(), SCH_EDITOR_CONTROL::SimProbe(), SCH_COMMIT::Stage(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), DIALOG_SYMBOL_FIELDS_TABLE::TransferDataToWindow(), EE_SELECTION_TOOL::unhighlight(), DIALOG_FIELD_PROPERTIES::UpdateField(), SCH_TABLECELL_POINT_EDIT_BEHAVIOR::UpdateItem(), EE_TOOL_BASE< T >::updateItem(), and SCH_BASE_FRAME::UpdateItem().
SCH_PIN * SCH_SCREEN::GetPin | ( | const VECTOR2I & | aPosition, |
SCH_SYMBOL ** | aSymbol = nullptr , |
||
bool | aEndPointOnly = false |
||
) | const |
Test the screen for a symbol pin item at aPosition.
[in] | aPosition | Position to test. |
[out] | aSymbol | The symbol if a pin was found, otherwise NULL. |
aEndPointOnly | Set to true to test if aPosition is the connection point of the pin. |
Definition at line 1009 of file sch_screen.cpp.
References SCH_SYMBOL::GetDrawItem(), SCH_SYMBOL::GetLibPins(), SCH_SYMBOL::GetLibSymbolRef(), SCH_SYMBOL::GetPinPhysicalPosition(), Items(), pin, SCH_PIN_T, and SCH_SYMBOL_T.
Referenced by IsTerminalPoint().
|
inlinevirtualinherited |
Reimplemented in SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET, SCH_SYMBOL, SCH_TABLE, SCH_TEXT, GERBER_DRAW_ITEM, DELETED_BOARD_ITEM, DS_DRAW_ITEM_LINE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_PAGE, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, KIGFX::ORIGIN_VIEWITEM, BOARD, FOOTPRINT, TUNING_STATUS_VIEW_ITEM, NETINFO_ITEM, PAD, PCB_DIMENSION_BASE, PCB_GENERATOR, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TARGET, PCB_TEXT, PCB_TRACK, PCB_ARC, PCB_VIA, ROUTER_STATUS_VIEW_ITEM, and ZONE.
Definition at line 243 of file eda_item.h.
Referenced by SYMBOL_EDITOR_MOVE_TOOL::AlignElements(), SCH_MOVE_TOOL::AlignToGrid(), TEARDROP_MANAGER::areItemsInSameZone(), SCH_EDIT_TOOL::ChangeTextType(), SCH_ITEM::compare(), TEST_BOARD_ITEM_FIXTURE::CompareItems(), TEST_EE_ITEM_FIXTURE::CompareItems(), PCB_GRID_HELPER::computeAnchors(), EE_GRID_HELPER::computeAnchors(), CONVERT_TOOL::CreatePolys(), SCH_EDIT_FRAME::DeleteJunction(), EDIT_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), CONNECTION_GRAPH::ercCheckBusToBusConflicts(), CONNECTION_GRAPH::ercCheckBusToNetConflicts(), CONNECTION_GRAPH::ercCheckMultipleDrivers(), CONNECTION_GRAPH::ercCheckNoConnects(), CONNECTION_GRAPH::ercCheckSingleGlobalLabel(), PCB_SELECTION_TOOL::FindItem(), GERBVIEW_SELECTION::GetCenter(), SCH_MOVE_TOOL::getConnectedDragItems(), EDA_ITEM::GetFocusPosition(), BOARD_ITEM::GetFPRelativePosition(), RC_ITEM::GetJsonViolation(), getMinDist(), SCH_FIELD::GetParentPosition(), EDA_ITEM::GetSortPosition(), PCB_SELECTION::GetTopLeftItem(), EE_SELECTION::GetTopLeftItem(), BOARD_ITEM::GetX(), BOARD_ITEM::GetY(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), DIALOG_MIGRATE_BUSES::onItemSelected(), BOARD::cmp_items::operator()(), PAD::PAD(), SCH_EDITOR_CONTROL::Paste(), PL_EDIT_TOOL::Paste(), PCB_CONTROL::placeBoardItems(), POSITION_RELATIVE_TOOL::PositionRelative(), BACK_ANNOTATE::processNetNameChange(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), RC_ITEM::ShowReport(), SCH_EDIT_TOOL::Swap(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), EDIT_TOOL::Swap(), DRC_TEST_PROVIDER_MISC::testTextVars(), ERC_TESTER::TestTextVars(), TransformItem(), EDIT_TOOL::updateModificationPoint(), PL_EDIT_TOOL::updateModificationPoint(), DIALOG_CREATE_ARRAY::UpdatePickedItem(), and DIALOG_POSITION_RELATIVE::UpdatePickedItem().
|
inline |
Definition at line 160 of file sch_screen.h.
References m_refCount.
Referenced by SCH_SHEET::GetScreenCount(), SCH_SHEET::SetScreen(), and SCH_SHEET::~SCH_SHEET().
|
inline |
Definition at line 526 of file sch_screen.h.
References m_sheetInstances.
Referenced by EESCHEMA_HELPERS::LoadSchematic().
SCH_SHEET_PIN * SCH_SCREEN::GetSheetPin | ( | const VECTOR2I & | aPosition | ) | const |
Test the screen if aPosition is a sheet label object.
[in] | aPosition | The position to test. |
Definition at line 1054 of file sch_screen.cpp.
References SCH_SHEET::GetPin(), Items(), and SCH_SHEET_T.
Referenced by IsTerminalPoint().
void SCH_SCREEN::GetSheets | ( | std::vector< SCH_ITEM * > * | aItems | ) | const |
Similar to Items().OfType( SCH_SHEET_T ), but return the sheets in a deterministic order (L-R, T-B) for sheet numbering.
Definition at line 1128 of file sch_screen.cpp.
References Items(), and SCH_SHEET_T.
Referenced by SCH_EDIT_FRAME::AnnotateSymbols(), HIERARCHY_PANE::buildHierarchyTree(), SCH_SHEET_LIST::BuildSheetList(), SCH_EDIT_FRAME::CheckAnnotate(), SCH_EDIT_FRAME::DeleteAnnotation(), and SCH_EDIT_FRAME::SaveSheetAsDesignBlock().
|
inlinevirtualinherited |
Return the coordinates that should be used for sorting this element visually compared to other elements.
For instance, for lines the midpoint might be a better sorting point than either end.
Reimplemented in SCH_LINE.
Definition at line 259 of file eda_item.h.
References EDA_ITEM::GetPosition().
|
inline |
Definition at line 521 of file sch_screen.h.
References m_symbolInstances.
Referenced by EESCHEMA_HELPERS::LoadSchematic(), and SCH_EDIT_FRAME::LoadSheetFromFile().
|
inlineinherited |
Definition at line 146 of file eda_item.h.
References CANDIDATE, IS_LINKED, EDA_ITEM::m_flags, SELECTED_BY_DRAG, and SKIP_STRUCT.
Referenced by EDA_ITEM::ClearTempFlags(), and SCH_ITEM::SwapFlags().
|
inline |
Definition at line 154 of file sch_screen.h.
References m_titles.
Referenced by SCH_PLOTTER::createPDFFile(), KIGFX::SCH_VIEW::DisplaySheet(), SCH_IO_KICAD_LEGACY::Format(), SCH_IO_KICAD_SEXPR::Format(), SCH_SHEET::GetContextualTextVars(), SCHEMATIC::GetContextualTextVars(), EESCHEMA_JOBS_HANDLER::getDrawingSheetProxyView(), SCH_BASE_FRAME::GetTitleBlock(), SCH_EDIT_FRAME::InitSheet(), NETLIST_EXPORTER_XML::makeDesignHeader(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), SCH_PLOTTER::plotOneSheetSVG(), SCH_SHEET::ResolveTextVar(), and SCHEMATIC::ResolveTextVar().
|
inherited |
Return a translated description of the type for this EDA_ITEM for display in user facing messages.
Definition at line 323 of file eda_item.cpp.
References ENUM_MAP< T >::Instance(), and EDA_ITEM::Type().
Referenced by PCB_GROUP::AddItem(), EDIT_TOOL::doMoveSelection(), and EDA_ITEM::GetFriendlyName().
|
inline |
Definition at line 531 of file sch_screen.h.
References m_uuid.
Referenced by SCH_EDIT_FRAME::CreateScreens(), SCH_IO_KICAD_LEGACY::loadHierarchy(), EESCHEMA_HELPERS::LoadSchematic(), SCH_IO_ALTIUM::LoadSchematicFile(), SCH_IO_EAGLE::LoadSchematicFile(), SCH_IO_KICAD_LEGACY::loadSymbol(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), and SCH_EDIT_FRAME::SaveProject().
|
inlineinherited |
Definition at line 75 of file base_screen.h.
References BASE_SCREEN::m_virtualPageNumber.
Referenced by KIGFX::SCH_VIEW::DisplaySheet(), SCH_IO_KICAD_LEGACY::Format(), EESCHEMA_JOBS_HANDLER::getDrawingSheetProxyView(), DIALOG_EESCHEMA_PAGE_SETTINGS::onTransferDataToWindow(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), SCH_PLOTTER::plotOneSheetSVG(), EDA_DRAW_FRAME::PrintDrawingSheet(), and DIALOG_PAGES_SETTINGS::UpdateDrawingSheetExample().
|
inline |
Definition at line 428 of file sch_screen.h.
References GetLine(), and LAYER_WIRE.
Referenced by IsTerminalPoint().
|
inlineinherited |
Definition at line 131 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by GRAPHICS_CLEANER::cleanupShapes(), PCB_BASE_EDIT_FRAME::ClearListAndDeleteItems(), SCH_EDIT_TOOL::DoDelete(), SCH_MOVE_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), PCB_TUNING_PATTERN::Flip(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), FOOTPRINT::IsConflicting(), ZONE::IsConflicting(), MarkConnections(), PCB_TUNING_PATTERN::Mirror(), PCB_TUNING_PATTERN::Move(), SCH_MOVE_TOOL::moveItem(), SCH_MOVE_TOOL::orthoLineDrag(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), GERBVIEW_FRAME::RemapLayers(), SCH_EDIT_TOOL::Rotate(), PCB_TUNING_PATTERN::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), EE_SELECTION_TOOL::selectMultiple(), SCH_COMMIT::Stage(), and PCB_TUNING_PATTERN::ViewDraw().
bool SCH_SCREEN::HasItems | ( | KICAD_T | aItemType | ) | const |
Definition at line 139 of file sch_screen.cpp.
References EE_RTREE::EE_TYPE::begin(), EE_RTREE::EE_TYPE::end(), m_rtree, and EE_RTREE::OfType().
Referenced by HasSheets().
|
inline |
Definition at line 118 of file sch_screen.h.
References HasItems(), and SCH_SHEET_T.
bool SCH_SCREEN::HasSymbolFieldNamesWithWhiteSpace | ( | ) | const |
Definition at line 1561 of file sch_screen.cpp.
References SCH_SYMBOL::GetFields(), Items(), and SCH_SYMBOL_T.
|
inlinevirtualinherited |
Test if aRect intersects this item.
aRect | A reference to a BOX2I object containing the rectangle to test. |
aContained | Set to true to test for containment instead of an intersection. |
aAccuracy | Increase aRect by this amount. |
Reimplemented in PCB_TUNING_PATTERN, SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET, SCH_SYMBOL, SCH_TABLE, SCH_TEXT, SCH_TEXTBOX, DS_DRAW_ITEM_BASE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, FOOTPRINT, PAD, PCB_DIMENSION_BASE, PCB_GROUP, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, PCB_ARC, ZONE, and GERBER_DRAW_ITEM.
Definition at line 229 of file eda_item.h.
|
inlinevirtualinherited |
Test if aPosition is inside or on the boundary of this item.
aPosition | A reference to a VECTOR2I object containing the coordinates to test. |
aAccuracy | Increase the item bounding box by this amount. |
Reimplemented in RATSNEST_VIEW_ITEM, SCH_SHEET, PCB_DIMENSION_BASE, PCB_TEXT, PCB_TEXTBOX, SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TABLE, SCH_TEXT, SCH_TEXTBOX, DS_DRAW_ITEM_BASE, DS_DRAW_ITEM_LINE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_PAGE, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TABLE, PCB_TARGET, PCB_TRACK, PCB_ARC, PCB_VIA, ZONE, and GERBER_DRAW_ITEM.
Definition at line 216 of file eda_item.h.
Referenced by PCB_GRID_HELPER::BestSnapAnchor(), TEARDROP_MANAGER::findAnchorPointsOnTrack(), PL_SELECTION_TOOL::guessSelectionCandidates(), EE_SELECTION_TOOL::GuessSelectionCandidates(), DS_DRAW_ITEM_BASE::HitTest(), EE_COLLECTOR::Inspect(), GENERAL_COLLECTOR::Inspect(), GERBER_COLLECTOR::Inspect(), PCB_SELECTION_TOOL::selectionContains(), PCB_SELECTION_TOOL::selectMultiple(), and PCB_GRID_HELPER::SnapToPad().
void SCH_SCREEN::IncRefCount | ( | ) |
Definition at line 126 of file sch_screen.cpp.
References m_refCount.
Referenced by SCH_SHEET::SCH_SHEET(), and SCH_SHEET::SetScreen().
|
inherited |
Definition at line 46 of file base_screen.cpp.
References BASE_SCREEN::m_Center, BASE_SCREEN::m_DrawOrg, BASE_SCREEN::m_LocalOrigin, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by BASE_SCREEN::BASE_SCREEN(), FOOTPRINT_EDIT_FRAME::Clear_Pcb(), PCB_EDIT_FRAME::Clear_Pcb(), SCH_SCREEN(), PL_EDITOR_FRAME::SetPageSettings(), GERBVIEW_FRAME::SetPageSettings(), and PCB_BASE_FRAME::SetPageSettings().
|
inlineinherited |
Definition at line 100 of file view_item.h.
Referenced by KIGFX::PCB_VIEW::Add(), PCB_BASE_EDIT_FRAME::ClearListAndDeleteItems(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::doMoveSelection(), KIGFX::PCB_PAINTER::Draw(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_COMMIT::MakeImage(), BOARD::Move(), DRAWING_TOOL::PlaceImportedGraphics(), EDIT_TOOL::Properties(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), KIGFX::PCB_VIEW::Remove(), EDIT_TOOL::removeNonRootItems(), BOARD_COMMIT::Revert(), PCB_EDIT_FRAME::SetActiveLayer(), PCB_BASE_FRAME::SetPlotSettings(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), EDIT_TOOL::Swap(), PCB_SELECTION_TOOL::unhighlightInternal(), PCB_TEST_SELECTION_TOOL::unhighlightInternal(), KIGFX::PCB_VIEW::Update(), EDIT_TOOL::updateModificationPoint(), and DIALOG_POSITION_RELATIVE::UpdatePickedItem().
|
inlineinherited |
Definition at line 112 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::GERBVIEW_PAINTER::draw(), SCH_FIND_REPLACE_TOOL::FindNext(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::SCH_PAINTER::getLineWidth(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
inlineinherited |
Definition at line 60 of file base_screen.h.
References BASE_SCREEN::m_flagModified.
Referenced by SCH_EDIT_FRAME::doAutoSave(), PCB_EDIT_FRAME::ExportSpecctraFile(), FP_TREE_SYNCHRONIZING_ADAPTER::GetAttr(), FP_TREE_SYNCHRONIZING_ADAPTER::GetValue(), PL_EDITOR_FRAME::IsContentModified(), FOOTPRINT_EDIT_FRAME::IsContentModified(), PCB_EDIT_FRAME::IsContentModified(), SCH_SHEET_LIST::IsModified(), and SCH_EDIT_FRAME::updateAutoSaveFile().
|
inline |
Definition at line 111 of file sch_screen.h.
References EE_RTREE::empty(), and m_rtree.
|
inlineinherited |
Definition at line 111 of file eda_item.h.
References ENTERED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw().
bool SCH_SCREEN::IsExplicitJunction | ( | const VECTOR2I & | aPosition | ) | const |
Indicates that a junction dot is necessary at the given location.
See IsJunctionNeeded for more info.
Definition at line 487 of file sch_screen.cpp.
References JUNCTION_HELPERS::AnalyzePoint(), info, and Items().
Referenced by SCH_EDIT_TOOL::DoDelete(), and SCH_EDIT_FRAME::SchematicCleanUp().
bool SCH_SCREEN::IsExplicitJunctionAllowed | ( | const VECTOR2I & | aPosition | ) | const |
Indicates that a juction dot may be placed at the given location.
See IsJunctionNeeded for more info.
Definition at line 506 of file sch_screen.cpp.
References JUNCTION_HELPERS::AnalyzePoint(), info, and Items().
Referenced by SCH_DRAWING_TOOLS::SingleClickPlace().
bool SCH_SCREEN::IsExplicitJunctionNeeded | ( | const VECTOR2I & | aPosition | ) | const |
Indicates that a junction dot is necessary at the given location, and does not yet exist.
See IsJunctionNeeded for more info.
Definition at line 496 of file sch_screen.cpp.
References JUNCTION_HELPERS::AnalyzePoint(), info, and Items().
Referenced by SCH_MOVE_TOOL::doMoveSelection(), and SCH_LINE_WIRE_BUS_TOOL::finishSegments().
|
inlineinherited |
Definition at line 195 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by KIGFX::SCH_PAINTER::draw(), SCH_FIELD::Plot(), and SCH_FIELD::Print().
bool SCH_SCREEN::IsJunction | ( | const VECTOR2I & | aPosition | ) | const |
Test if a junction is required for the items at aPosition on the screen.
Note that this coule be either an implied junction (bus entry) or an explicit junction (dot).
A junction is required at aPosition if one of the following criteria is satisfied:
[in] | aPosition | The position to test. |
Definition at line 479 of file sch_screen.cpp.
References JUNCTION_HELPERS::AnalyzePoint(), info, and Items().
Referenced by SCH_LINE::MergeOverlap().
|
inlineinherited |
Definition at line 106 of file eda_item.h.
References IS_CHANGED, and EDA_ITEM::m_flags.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles().
|
inlineinherited |
Definition at line 108 of file eda_item.h.
References IS_MOVING, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_TOOL::AutoplaceFields(), SCH_PIN::CalcEdit(), PCB_GRID_HELPER::computeAnchors(), EDIT_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), EDIT_TOOL::Flip(), SCH_EDIT_TOOL::JustifyText(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), PCB_BASE_FRAME::PlaceFootprint(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::Swap(), and SYMBOL_EDITOR_EDIT_TOOL::Swap().
|
inlineinherited |
Definition at line 107 of file eda_item.h.
References IS_NEW, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_TOOL::ChangeBodyStyle(), SCH_EDIT_TOOL::ChangeTextType(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), PCB_TUNING_PATTERN::EditStart(), EDIT_TOOL::Flip(), SCH_MOVE_TOOL::getConnectedDragItems(), DIALOG_PIN_PROPERTIES::getSyncPinsMessage(), SYMBOL_EDITOR_DRAWING_TOOLS::Init(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), IsTerminalPoint(), EE_POINT_EDITOR::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), EDIT_TOOL::MoveExact(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_SHAPE_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PIN_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PROPERTIES::TransferDataFromWindow(), and PCB_TUNING_PATTERN::ViewDraw().
|
inline |
Definition at line 146 of file sch_screen.h.
References m_isReadOnly.
Referenced by SCH_EDIT_FRAME::updateTitle().
|
inlinevirtualinherited |
Override this method in any derived object that supports test find and replace.
Reimplemented in SCH_FIELD, SCH_LABEL, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 415 of file eda_item.h.
Referenced by EDA_ITEM::Matches().
|
inlineinherited |
Definition at line 114 of file eda_item.h.
References IS_MOVING, IS_ROLLOVER, and EDA_ITEM::m_flags.
Referenced by KIGFX::SCH_PAINTER::draw().
|
inlineinherited |
Definition at line 99 of file view_item.h.
|
inlineinherited |
Definition at line 110 of file eda_item.h.
References EDA_ITEM::m_flags, and SELECTED.
Referenced by ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), ALIGN_DISTRIBUTE_TOOL::AlignTop(), SCH_EDIT_TOOL::ChangeTextType(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), EDIT_TOOL::doMoveSelection(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::SCH_PAINTER::drawItemBoundingBox(), DS_PROXY_UNDO_ITEM::DS_PROXY_UNDO_ITEM(), SCH_EDIT_FRAME::FlipBodyStyle(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), SCH_MOVE_TOOL::getConnectedDragItems(), KIGFX::SCH_PAINTER::getLineWidth(), DIALOG_EXCHANGE_FOOTPRINTS::isMatch(), DIALOG_CHANGE_SYMBOLS::isMatch(), MarkConnections(), SCH_LINE::MergeOverlap(), SCH_EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), SCH_MOVE_TOOL::moveItem(), KIGFX::SCH_PAINTER::nonCached(), SCH_MOVE_TOOL::orthoLineDrag(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), BOARD_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), EE_SELECTION_TOOL::RebuildSelection(), PCB_SELECTION_TOOL::RebuildSelection(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), SCH_COMMIT::Revert(), SCH_EDIT_TOOL::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_SEXPR::saveTable(), GERBVIEW_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::select(), PCB_TEST_SELECTION_TOOL::select(), EE_SELECTION_TOOL::SelectColumns(), PCB_SELECTION_TOOL::SelectColumns(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), EE_SELECTION_TOOL::SelectRows(), PCB_SELECTION_TOOL::SelectRows(), SCH_COMMIT::Stage(), DIALOG_TABLE_PROPERTIES::TransferDataToWindow(), GERBVIEW_SELECTION_TOOL::unselect(), SCH_FIND_REPLACE_TOOL::UpdateFind(), SCH_SYMBOL::UpdatePins(), PCB_TUNING_PATTERN::ViewDraw(), PCB_FIELD::ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem().
|
inlineinherited |
Definition at line 168 of file eda_item.h.
References IS_SHOWN_AS_BITMAP, and EDA_ITEM::m_flags.
bool SCH_SCREEN::IsTerminalPoint | ( | const VECTOR2I & | aPosition, |
int | aLayer | ||
) | const |
Test if aPosition is a connection point on aLayer.
[in] | aPosition | Position to test. |
aLayer | The layer type to test against. Valid layer types are LAYER_NOTES, LAYER_BUS, and LAYER_WIRE. |
Definition at line 601 of file sch_screen.cpp.
References GetBus(), GetItem(), GetLabel(), GetLine(), GetPin(), GetSheetPin(), GetWire(), SCH_ITEM::IsConnected(), EDA_ITEM::IsNew(), LAYER_BUS, LAYER_NOTES, LAYER_WIRE, SCH_BUS_WIRE_ENTRY_T, and SCH_JUNCTION_T.
Referenced by SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), and SCH_IO_ALTIUM::ParsePort().
|
inlinevirtualinherited |
Check whether the item is one of the listed types.
aScanTypes | List of item types |
Reimplemented in SCH_FIELD, SCH_ITEM, SCH_LABEL_BASE, SCH_LINE, PAD, PCB_FIELD, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, and PCB_VIA.
Definition at line 176 of file eda_item.h.
References EDA_ITEM::m_structType, and SCH_LOCATE_ANY_T.
Referenced by SCH_EDIT_TOOL::AutoplaceFields(), ROUTER_TOOL::CanInlineDrag(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), MULTICHANNEL_TOOL::findOtherItemsInRuleArea(), SCH_FIELD::GetCanonicalName(), SCH_FIELD::GetName(), SCH_FIELD::GetShownText(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), SCH_ITEM::IsType(), PAD::IsType(), PCB_FIELD::IsType(), PCB_SHAPE::IsType(), PCB_TEXT::IsType(), PCB_TEXTBOX::IsType(), PCB_VIA::IsType(), EE_POINT_EDITOR::Main(), PL_POINT_EDITOR::Main(), CONVERT_TOOL::makePolysFromChainedSegs(), EE_SELECTION_TOOL::RequestSelection(), SCH_FIELD::SetId(), SCH_EDITOR_CONTROL::SimProbe(), SCH_COMMIT::Stage(), SCH_BASE_FRAME::UpdateItem(), and EDA_ITEM::Visit().
|
inline |
Gets the full RTree, usually for iterating.
N.B. The iteration order of the RTree is not readily apparent and will change if/when you add or move items and the RTree is re-balanced. Any exposure of the RTree contents to the user MUST be sorted before being presented. See SCH_IO_KICAD_SEXPR::Format() or SCH_EDITOR_CONTROL::nextMatch() for examples.
Definition at line 108 of file sch_screen.h.
References m_rtree.
Referenced by SCH_IO_EAGLE::addBusEntries(), SCH_MOVE_TOOL::AlignToGrid(), SCH_SHEET_LIST::AnnotatePowerSymbols(), SCH_EDIT_FRAME::AutoRotateItem(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), SCH_EDIT_FRAME::BreakSegmentsOnJunctions(), CONNECTION_GRAPH::buildConnectionGraph(), SCH_SCREENS::buildScreenList(), SCH_SCREENS::ChangeSymbolLibNickname(), SCH_SHEET::CleanupSheet(), ClearAnnotation(), ClearDrawingState(), EE_COLLECTOR::Collect(), SCH_EDIT_FRAME::CommonSettingsChanged(), CountConnectedItems(), SCH_SHEET::CountSheets(), SCH_EDIT_FRAME::DeleteJunction(), SCH_EDIT_FRAME::DisplayCurrentSheet(), DESIGN_BLOCK_PREVIEW_WIDGET::DisplayDesignBlock(), KIGFX::SCH_VIEW::DisplaySheet(), SCH_MOVE_TOOL::doMoveSelection(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), EnsureAlternateReferencesExist(), CONNECTION_GRAPH::ercCheckHierSheets(), SCH_SHEET_LIST::FillItemMap(), findItemsFromSyncSelection(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SCH_DRAWING_TOOLS::findWire(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), FixLegacyPowerSymbolMismatches(), SCH_IO_KICAD_LEGACY::Format(), SCH_IO_KICAD_SEXPR::Format(), GetBusesAndWires(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), GetConnections(), SCH_EDIT_FRAME::GetDocumentExtents(), GetHierarchicalItems(), GetItem(), GetLabel(), GetLabelOrientationForPoint(), GetLine(), GetPin(), AUTOPLACER::getPossibleCollisions(), getSheetBbox(), SCH_LINE_WIRE_BUS_TOOL::getSheetPin(), GetSheetPin(), GetSheets(), API_HANDLER_SCH::handleCreateUpdateItemsInternal(), SCH_EDIT_FRAME::HardRedraw(), HasSymbolFieldNamesWithWhiteSpace(), SCH_SHEET::HasUndefinedPins(), SCH_DRAWING_TOOLS::ImportSheet(), SCH_EDIT_TOOL::Init(), IsExplicitJunction(), IsExplicitJunctionAllowed(), IsExplicitJunctionNeeded(), IsJunction(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), SCH_IO_KICAD_SEXPR::loadHierarchy(), SCH_IO_KICAD_LEGACY::loadHierarchy(), KI_TEST::LoadHierarchy(), SCH_IO_EAGLE::loadSheet(), SCH_SHEET::LocatePathOfScreen(), LINE_POINT_EDIT_BEHAVIOR::MakePoints(), MarkConnections(), MigrateSimModels(), SCH_IO_EAGLE::moveLabels(), DIALOG_SHEET_PIN_PROPERTIES::onComboBox(), DIALOG_ERC::OnERCItemRClick(), SCH_EDIT_FRAME::onNetNavigatorSelection(), SCH_IO_ALTIUM::ParseAltiumSch(), SCH_EDITOR_CONTROL::Paste(), Plot(), Print(), DIALOG_CHANGE_SYMBOLS::processMatchingSymbols(), PruneOrphanedSheetInstances(), PruneOrphanedSymbolInstances(), EE_SELECTION_TOOL::RebuildSelection(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_RULE_AREA::RefreshContainedItemsAndDirectives(), SCH_EDIT_FRAME::RefreshOperatingPointDisplay(), DIALOG_SYMBOL_REMAP::remapSymbolsToLibTable(), Remove(), SCH_EDITOR_CONTROL::RepairSchematic(), SCH_EDIT_FRAME::SaveProject(), SCH_EDIT_FRAME::SchematicCleanUp(), SCH_SHEET::SearchHierarchy(), SetConnectivityDirty(), SetLegacySymbolInstanceData(), SCH_EDITOR_CONTROL::setPastedSymbolInstances(), SCH_EDIT_FRAME::setupUIConditions(), SCH_SHEET::SymbolCount(), TestDanglingEnds(), DIALOG_ERC::testErc(), ERC_TESTER::TestFourWayJunction(), ERC_TESTER::TestMissingNetclasses(), ERC_TESTER::TestTextVars(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::TransferDataFromWindow(), DIALOG_SHEET_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PIN_PROPERTIES::TransferDataToWindow(), SCH_LINE_WIRE_BUS_TOOL::TrimOverLappingWires(), SCH_EDIT_FRAME::TrimWire(), DIALOG_CHANGE_SYMBOLS::updateFieldsList(), SCH_FIND_REPLACE_TOOL::UpdateFind(), PANEL_SYNC_SHEET_PINS::UpdateForms(), UpdateLocalLibSymbolLinks(), SCH_EDITOR_CONTROL::UpdateNetHighlighting(), SCH_EDITOR_CONTROL::updatePastedSheet(), SCH_SHEET_LIST::UpdateSymbolInstanceData(), and UpdateSymbolLinks().
|
inline |
Definition at line 109 of file sch_screen.h.
References m_rtree.
|
inlinestaticinherited |
This changes first parameter to avoid the DList and use the main queue instead.
Definition at line 296 of file eda_item.h.
References EDA_ITEM::Visit().
Referenced by GERBER_FILE_IMAGE::Visit().
|
inlinestaticinherited |
Change first parameter to avoid the DList and use std::vector instead.
Definition at line 316 of file eda_item.h.
References EDA_ITEM::Visit().
Return all wires and junctions connected to aSegment which are not connected any symbol pin.
aSegment | The segment to test for connections. |
Definition at line 408 of file sch_screen.cpp.
References EDA_ITEM::GetBoundingBox(), SCH_LINE::GetEndPoint(), GetItem(), SCH_ITEM::GetLayer(), SCH_LINE::GetStartPoint(), EDA_ITEM::HasFlag(), SCH_ITEM::IsConnected(), EDA_ITEM::IsSelected(), Items(), LAYER_NOTES, pin, PROCESSED, SCH_JUNCTION_T, SCH_LINE_T, SCH_PIN_T, EDA_ITEM::SetFlags(), and EDA_ITEM::Type().
Referenced by EE_SELECTION_TOOL::SelectConnection().
|
inlinevirtualinherited |
Compare the item against the search criteria in aSearchData.
The base class returns false since many of the objects derived from EDA_ITEM do not have any text to search.
aSearchData | A reference to a wxFindReplaceData object containing the search criteria. |
aAuxData | A pointer to optional data required for the search or NULL if not used. |
Reimplemented in SCH_MARKER, SCH_FIELD, SCH_LABEL_BASE, SCH_PIN, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TABLE, SCH_TEXT, SCH_TEXTBOX, NETINFO_ITEM, PCB_MARKER, PCB_TABLE, PCB_TEXT, PCB_TEXTBOX, and ZONE.
Definition at line 377 of file eda_item.h.
Referenced by SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), SCH_FIND_REPLACE_TOOL::HasMatch(), SCH_MARKER::Matches(), SCH_FIELD::Matches(), SCH_LABEL_BASE::Matches(), SCH_PIN::Matches(), SCH_SHEET_PIN::Matches(), SCH_TEXT::Matches(), SCH_TEXTBOX::Matches(), NETINFO_ITEM::Matches(), PCB_MARKER::Matches(), PCB_TEXT::Matches(), PCB_TEXTBOX::Matches(), ZONE::Matches(), TEXT_SEARCH_HANDLER::Search(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
protectedinherited |
Compare aText against search criteria in aSearchData.
This is a helper function for simplify derived class logic.
aText | A reference to a wxString object containing the string to test. |
aSearchData | The criteria to search against. |
Definition at line 126 of file eda_item.cpp.
References CTX_SEARCH, EDA_COMBINED_MATCHER::Find(), EDA_SEARCH_DATA::findString, EDA_ITEM::IsReplaceable(), isWordChar(), EDA_SEARCH_DATA::matchCase, EDA_SEARCH_DATA::matchMode, next(), EDA_SEARCH_DATA::searchAndReplace, and text.
void SCH_SCREEN::MigrateSimModels | ( | ) |
Migrate any symbols having V6 simulation models to their V7 equivalents.
Definition at line 1969 of file sch_screen.cpp.
References Items(), Prj(), SCH_SYMBOL_T, and Schematic().
Referenced by SCH_EDIT_FRAME::LoadSheetFromFile(), and SCH_EDITOR_CONTROL::Paste().
|
inherited |
Test if another item is less than this object.
aItem | - Item to compare against. |
Definition at line 252 of file eda_item.cpp.
References EDA_ITEM::GetClass().
void SCH_SCREEN::Plot | ( | PLOTTER * | aPlotter, |
const SCH_PLOT_OPTS & | aPlotOpts | ||
) | const |
Plot all the schematic objects to aPlotter.
[in] | aPlotter | The plotter object to plot to. |
Sort to ensure plot-order consistency with screen drawing
Definition at line 898 of file sch_screen.cpp.
References Items(), m_rtree, EE_RTREE::Overlapping(), PLOTTER::RenderSettings(), SCH_BITMAP_T, SCH_JUNCTION_T, SCH_SYMBOL_T, and PLOTTER::SetCurrentLineWidth().
Referenced by SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), and SCH_PLOTTER::plotOneSheetSVG().
void SCH_SCREEN::Print | ( | const SCH_RENDER_SETTINGS * | aSettings | ) |
Print all the items in the screen to aDC.
Sort to ensure plot-order consistency with screen drawing
Definition at line 854 of file sch_screen.cpp.
References Items(), SCH_BITMAP_T, and SCH_JUNCTION_T.
Referenced by SCH_EDIT_FRAME::PrintPage(), and SCH_PRINTOUT::PrintPage().
void SCH_SCREEN::PruneOrphanedSheetInstances | ( | const wxString & | aProjectName, |
const SCH_SHEET_LIST & | aValidSheetPaths | ||
) |
Remove all invalid sheet instance data in this screen object for the project defined by aProjectName and the list of aValidSheetPaths.
aProjectName | is the name of the current project. |
aValidSheetPaths | is the list of valid SCH_SHEET_PATH objects for the current project. |
Definition at line 1514 of file sch_screen.cpp.
References SCH_SHEET::GetInstances(), SCH_SHEET_LIST::GetSheetPathByKIIDPath(), Items(), SCH_SHEET::RemoveInstance(), SCH_SHEET_T, and traceSchSheetPaths.
void SCH_SCREEN::PruneOrphanedSymbolInstances | ( | const wxString & | aProjectName, |
const SCH_SHEET_LIST & | aValidSheetPaths | ||
) |
Remove all invalid symbol instance data in this screen object for the project defined by aProjectName and the list of aValidSheetPaths.
aProjectName | is the name of the current project. |
aValidSheetPaths | is the list of valid SCH_SHEET_PATH objects for the current project. |
Definition at line 1467 of file sch_screen.cpp.
References SCH_SYMBOL::GetInstances(), SCH_SHEET_LIST::GetSheetPathByKIIDPath(), Items(), SCH_SYMBOL::RemoveInstance(), SCH_SYMBOL_T, and traceSchSheetPaths.
bool SCH_SCREEN::Remove | ( | SCH_ITEM * | aItem, |
bool | aUpdateLibSymbol = true |
||
) |
Remove aItem from the schematic associated with this screen.
[in] | aItem | Item to be removed from schematic. |
aUpdateLibSymbol | removes the library symbol as required when true. |
Definition at line 323 of file sch_screen.cpp.
References SCH_SYMBOL::GetSchSymbolLibraryName(), Items(), m_libSymbols, m_rtree, EE_RTREE::OfType(), EE_RTREE::remove(), SCH_SYMBOL_T, and EDA_ITEM::Type().
Referenced by SCH_SHEET_LIST::BuildSheetList(), DeleteItem(), SCH_EDITOR_CONTROL::doCopy(), DIALOG_SHEET_PROPERTIES::onSheetFilenameChanged(), DIALOG_CHANGE_SYMBOLS::processSymbols(), SCH_COMMIT::pushSchEdit(), SCH_COMMIT::Revert(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), Update(), and UpdateSymbolLinks().
|
inlinevirtualinherited |
Reimplemented in SCH_ITEM.
Definition at line 158 of file eda_item.h.
|
inlinevirtualinherited |
Perform a text replace using the find and replace criteria in aSearchData on items that support text find and replace.
This function must be overridden for items that support text replace.
aSearchData | A reference to a wxFindReplaceData object containing the search and replace criteria. |
aAuxData | A pointer to optional data required for the search or NULL if not used. |
Reimplemented in SCH_LABEL_BASE, SCH_PIN, SCH_TEXT, SCH_TEXTBOX, SCH_FIELD, and SCH_SHEET_PIN.
Definition at line 404 of file eda_item.h.
|
staticinherited |
Perform a text replace on aText using the find and replace criteria in aSearchData on items that support text find and replace.
aSearchData | A reference to a wxFindReplaceData object containing the search and replace criteria. |
aText | A reference to a wxString object containing the text to be replaced. |
Definition at line 189 of file eda_item.cpp.
References EDA_SEARCH_DATA::findString, isWordChar(), EDA_SEARCH_DATA::matchCase, EDA_SEARCH_DATA::matchMode, next(), EDA_SEARCH_DATA::replaceString, and text.
Referenced by EDA_TEXT::Replace(), SCH_FIELD::Replace(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), and SCH_FIND_REPLACE_TOOL::ReplaceAndFindNext().
SCHEMATIC * SCH_SCREEN::Schematic | ( | ) | const |
Definition at line 100 of file sch_screen.cpp.
References EDA_ITEM::GetParent(), SCHEMATIC_T, and EDA_ITEM::Type().
Referenced by SCH_SCREENS::BuildClientSheetPathList(), SCH_SCREENS::ClearAnnotationOfNewSheetPaths(), KIGFX::SCH_VIEW::DisplaySheet(), FixupEmbeddedData(), FIELDS_GRID_TABLE::initGrid(), MigrateSimModels(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_PLOTTER::plotOneSheetDXF(), SCH_PLOTTER::plotOneSheetHpgl(), SCH_PLOTTER::plotOneSheetPDF(), SCH_PLOTTER::plotOneSheetPS(), SCH_PLOTTER::plotOneSheetSVG(), SCH_PRINTOUT::PrintPage(), DIALOG_CHANGE_SYMBOLS::processSymbols(), RESCUER::RESCUER(), SCH_SHEET_PATH::TestForRecursion(), SCH_PROPERTIES_PANEL::updateFontList(), UpdateSymbolLinks(), and SCH_SCREENS::UpdateSymbolLinks().
|
virtualinherited |
Serializes this object to the given Any message.
The Any message's concrete type will be specific to the object in question.
aContainer | will be filled with a message describing this object |
Reimplemented in SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, EDA_SHAPE, EDA_TEXT, BOARD_STACKUP, FOOTPRINT, PAD, PADSTACK, PCB_DIMENSION_BASE, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_FIELD, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, and ZONE.
Definition at line 24 of file serializable.cpp.
Referenced by API_HANDLER_SCH::handleCreateUpdateItemsInternal(), and API_HANDLER_PCB::handleCreateUpdateItemsInternal().
|
inlineinherited |
Definition at line 76 of file inspectable.h.
References PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 59 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 42 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::setter(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by SCH_PROPERTIES_PANEL::valueChanged(), and PCB_PROPERTIES_PANEL::valueChanged().
|
inline |
Definition at line 152 of file sch_screen.h.
References m_aux_origin.
|
inlineinherited |
Definition at line 120 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::SetFlags().
Referenced by KIGFX::SCH_PAINTER::draw(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), PL_SELECTION_TOOL::highlight(), EE_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
void SCH_SCREEN::SetConnectivityDirty | ( | ) |
Definition at line 847 of file sch_screen.cpp.
References Items().
|
inlineinherited |
Definition at line 59 of file base_screen.h.
References BASE_SCREEN::m_flagModified.
Referenced by BOOST_AUTO_TEST_CASE(), SCH_SHEET_LIST::BuildSheetList(), FOOTPRINT_EDIT_FRAME::Clear_Pcb(), PCB_EDIT_FRAME::Clear_Pcb(), SYMBOL_LIBRARY_MANAGER::ClearLibraryModified(), FOOTPRINT_EDIT_FRAME::ClearModify(), SCH_SHEET_LIST::ClearModifyStatus(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), DeleteItem(), SCH_EDIT_FRAME::doAutoSave(), PCB_EDIT_FRAME::doAutoSave(), PCB_EDIT_FRAME::ExportSpecctraFile(), PL_EDITOR_FRAME::Files_io(), PCB_EDIT_FRAME::Files_io_from_id(), PCB_EDIT_FRAME::GenIPC2581File(), SCH_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::InitSheet(), PL_EDITOR_FRAME::LoadDrawingSheetFile(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), SCH_IO_KICAD_LEGACY::loadSymbol(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), SCH_EDIT_FRAME::OnModify(), SYMBOL_EDIT_FRAME::OnModify(), PCB_BASE_FRAME::OnModify(), PL_EDITOR_FRAME::OnModify(), PL_EDITOR_FRAME::OnNewDrawingSheet(), SCH_EDIT_FRAME::OpenProjectFiles(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::OpenProjectFiles(), SCH_IO_KICAD_SEXPR_PARSER::parseSchSheetInstances(), DIALOG_SYMBOL_REMAP::remapSymbolsToLibTable(), FOOTPRINT_EDIT_FRAME::RevertFootprint(), SYMBOL_EDIT_FRAME::saveCurrentSymbol(), PL_EDITOR_FRAME::SaveDrawingSheetFile(), PCB_EDIT_FRAME::SavePcbFile(), SCH_EDIT_FRAME::saveSchematicFile(), DIALOG_PAGES_SETTINGS::TransferDataFromWindow(), and SYMBOL_LIBRARY_MANAGER::UpdateSymbol().
|
inline |
Definition at line 148 of file sch_screen.h.
References m_fileExists.
Referenced by SCH_IO_KICAD_SEXPR::loadHierarchy(), SCH_IO_KICAD_LEGACY::loadHierarchy(), SCH_IO_KICAD_LEGACY::SaveSchematicFile(), and SCH_IO_KICAD_SEXPR::SaveSchematicFile().
|
inline |
Definition at line 127 of file sch_screen.h.
References m_fileFormatVersionAtLoad.
Referenced by SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
void SCH_SCREEN::SetFileName | ( | const wxString & | aFileName | ) |
Set the file name for this screen to aFileName.
aFileName | is the absolute file name and path of the screen. |
Definition at line 118 of file sch_screen.cpp.
References m_fileName.
Referenced by SCH_EDIT_FRAME::CreateScreens(), SCH_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::InitSheet(), LTSPICE_SCHEMATIC::Load(), SCH_IO_KICAD_SEXPR::loadHierarchy(), SCH_IO_KICAD_LEGACY::loadHierarchy(), KI_TEST::LoadHierarchy(), SCH_IO_EAGLE::loadModuleInstance(), SCH_IO_EAGLE::loadSchematic(), EESCHEMA_HELPERS::LoadSchematic(), LoadSchematic(), SCH_IO_ALTIUM::LoadSchematicFile(), SCH_IO_CADSTAR_ARCHIVE::LoadSchematicFile(), SCH_IO_EAGLE::LoadSchematicFile(), SCH_IO_EASYEDA::LoadSchematicFile(), SCH_IO_EASYEDAPRO::LoadSchematicFile(), SCH_IO_LTSPICE::LoadSchematicFile(), SCH_IO_EAGLE::loadSheet(), CADSTAR_SCH_ARCHIVE_LOADER::loadSheetAndChildSheets(), SCH_EDIT_FRAME::LoadSheetFromFile(), CADSTAR_SCH_ARCHIVE_LOADER::loadSheets(), DIALOG_SHEET_PROPERTIES::onSheetFilenameChanged(), SCH_EDIT_FRAME::OpenProjectFiles(), SCH_IO_ALTIUM::ParseAltiumSch(), SCH_IO_ALTIUM::ParseHarnessType(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_FRAME::SaveProject(), and DIALOG_SHEET_PROPERTIES::TransferDataFromWindow().
|
inline |
Definition at line 145 of file sch_screen.h.
References m_isReadOnly.
Referenced by SCH_IO_KICAD_SEXPR::loadHierarchy(), and SCH_IO_KICAD_LEGACY::loadHierarchy().
|
inlineinherited |
Definition at line 127 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by SCH_IO_EAGLE::addBusEntries(), PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), SCH_IO_ALTIUM::AddTextBox(), SCH_MOVE_TOOL::AlignToGrid(), PCB_CONTROL::AppendBoard(), SCH_EDIT_FRAME::BreakSegment(), SCH_EDIT_TOOL::BreakWire(), FOOTPRINT::BuildCourtyardCaches(), SCH_EDIT_TOOL::ChangeTextType(), GRAPHICS_CLEANER::cleanupShapes(), ConnectBoardShapes(), PCB_TUNING_PATTERN::CreateNew(), SCH_DRAWING_TOOLS::createNewText(), SCH_EDIT_FRAME::DeleteJunction(), doConvertOutlineToPolygon(), SCH_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), EDIT_TOOL::DragArcTrack(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawLine(), DRAWING_TOOL::DrawRectangle(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), PCB_TUNING_PATTERN::EditStart(), PCB_SELECTION_TOOL::EnterGroup(), PAD_TOOL::explodePad(), SCH_IO_KICAD_SEXPR::Format(), SCH_MOVE_TOOL::getConnectedDragItems(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), EE_SELECTION_TOOL::GuessSelectionCandidates(), EE_COLLECTOR::Inspect(), EE_SELECTION_TOOL::Main(), BOARD_COMMIT::MakeImage(), CONVERT_TOOL::makePolysFromChainedSegs(), CONVERT_TOOL::makePolysFromClosedGraphics(), CONVERT_TOOL::makePolysFromOpenGraphics(), MarkConnections(), TRACKS_CLEANER::mergeCollinearSegments(), SCH_MOVE_TOOL::moveItem(), SYMBOL_EDITOR_MOVE_TOOL::moveItem(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), KIGFX::ORIGIN_VIEWITEM::ORIGIN_VIEWITEM(), SCH_MOVE_TOOL::orthoLineDrag(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseBus(), SCH_IO_ALTIUM::ParseBusEntry(), SCH_IO_ALTIUM::ParseHarnessPort(), SCH_IO_ALTIUM::ParseJunction(), SCH_IO_ALTIUM::ParseLabel(), SCH_IO_ALTIUM::ParseLine(), SCH_IO_ALTIUM::ParseNetLabel(), SCH_IO_ALTIUM::ParseNoERC(), SCH_IO_ALTIUM::ParsePieChart(), SCH_IO_ALTIUM::ParsePolygon(), SCH_IO_ALTIUM::ParsePolyline(), SCH_IO_ALTIUM::ParsePort(), SCH_IO_ALTIUM::ParseRectangle(), SCH_IO_ALTIUM::ParseRoundRectangle(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_IO_ALTIUM::ParseSheetSymbol(), SCH_IO_ALTIUM::ParseSignalHarness(), SCH_IO_ALTIUM::ParseWire(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PL_DRAWING_TOOLS::PlaceItem(), SCH_SYMBOL::Plot(), BACK_ANNOTATE::processNetNameChange(), BOARD_COMMIT::Push(), SYMBOL_EDIT_FRAME::PushSymbolToUndoList(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_SELECTION_TOOL::RebuildSelection(), GERBVIEW_FRAME::RemapLayers(), BOARD::Remove(), FOOTPRINT::Remove(), PCB_TUNING_PATTERN::Remove(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_TOOL::Rotate(), SCH_EDIT_FRAME::SaveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_SEXPR::saveTable(), EE_SELECTION_TOOL::SelectAll(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), EE_SELECTION_TOOL::selectMultiple(), EDA_ITEM::SetBrightened(), EDA_ITEM::SetIsShownAsBitmap(), EDA_ITEM::SetModified(), EDA_ITEM::SetSelected(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), SCH_ITEM::SwapFlags(), DS_DATA_ITEM::SyncDrawItems(), DS_DATA_ITEM_BITMAP::SyncDrawItems(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), and ROUTER_TOOL::updateSizesAfterRouterEvent().
|
inlineinherited |
Definition at line 153 of file view_item.h.
Referenced by EDA_ITEM::EDA_ITEM(), SYMBOL_DIFF_WIDGET::onSlider(), FOOTPRINT_DIFF_WIDGET::onSlider(), and EDA_ITEM::operator=().
|
inlineinherited |
Set and clear force visible flag used to force the item to be drawn even if it's draw attribute is set to not visible.
aEnable | True forces the item to be drawn. False uses the item's visibility setting to determine if the item is to be drawn. |
Definition at line 194 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by SCH_FIND_REPLACE_TOOL::FindNext(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
inlineinherited |
Definition at line 160 of file eda_item.h.
References EDA_ITEM::ClearFlags(), IS_SHOWN_AS_BITMAP, and EDA_ITEM::SetFlags().
void SCH_SCREEN::SetLegacySymbolInstanceData | ( | ) |
Update the symbol value and footprint instance data for legacy designs.
Definition at line 1408 of file sch_screen.cpp.
References SCH_SYMBOL::AddHierarchicalReference(), SCH_SYMBOL::GetInstances(), Items(), and SCH_SYMBOL_T.
Referenced by SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
|
inherited |
Definition at line 67 of file eda_item.cpp.
References IS_CHANGED, EDA_ITEM::m_parent, EDA_ITEM::SetFlags(), and EDA_ITEM::SetModified().
Referenced by PCB_EDIT_FRAME::OpenProjectFiles(), ALTIUM_PCB::Parse(), SCH_IO_ALTIUM::ParseASCIISchematic(), SCH_IO_ALTIUM::ParseFileHeader(), and EDA_ITEM::SetModified().
|
inherited |
Definition at line 63 of file base_screen.cpp.
References BASE_SCREEN::m_pageCount.
Referenced by SCH_IO_KICAD_LEGACY::loadPageSettings(), and SCHEMATIC::SetSheetNumberAndCount().
|
inlineinherited |
Definition at line 79 of file base_screen.h.
References BASE_SCREEN::m_pageNumber.
Referenced by SCH_EDIT_FRAME::CreateScreens(), SCH_EDIT_TOOL::EditPageNumber(), EESCHEMA_HELPERS::LoadSchematic(), LoadSchematic(), SCH_IO_EASYEDAPRO::LoadSchematicFile(), HIERARCHY_PANE::onRightClick(), and SCHEMATIC::SetSheetNumberAndCount().
|
inline |
Definition at line 131 of file sch_screen.h.
References m_paper.
Referenced by SYMBOL_EDITOR_CONTROL::ExportSymbolAsSVG(), SCH_EDIT_FRAME::InitSheet(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), SCH_IO_KICAD_LEGACY::loadPageSettings(), SCH_IO_EAGLE::loadSheet(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_IO_ALTIUM::ParseSheet(), and SCH_BASE_FRAME::SetPageSettings().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL, and NETINFO_ITEM.
Definition at line 104 of file eda_item.h.
References EDA_ITEM::m_parent.
Referenced by BOARD::Add(), FOOTPRINT::Add(), PCB_TABLE::AddCell(), SCH_TABLE::AddCell(), LIB_SYMBOL::AddDrawItem(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), BOARD_NETLIST_UPDATER::addNewFootprint(), SCH_SHEET::AddPin(), PAD::AddPrimitive(), PADSTACK::AddPrimitive(), PAD::AddPrimitivePoly(), SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic(), Append(), BOOST_AUTO_TEST_CASE(), CADSTAR_SCH_ARCHIVE_LOADER::copySymbolItems(), SYMBOL_EDIT_FRAME::CreateNewSymbol(), SCH_DRAWING_TOOLS::createNewText(), PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PIN_PROPERTIES::DIALOG_PIN_PROPERTIES(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawTable(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), LIB_SYMBOL::Flatten(), PCB_IO_KICAD_SEXPR::FootprintSave(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), CADSTAR_SCH_ARCHIVE_LOADER::getKiCadSchText(), PCB_TABLE::InsertCell(), SCH_TABLE::InsertCell(), LIB_SYMBOL::LIB_SYMBOL(), LTSPICE_SCHEMATIC::Load(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadAliases(), CADSTAR_SCH_ARCHIVE_LOADER::loadChildSheets(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), SCH_IO_KICAD_SEXPR::loadHierarchy(), SCH_IO_KICAD_LEGACY::loadHierarchy(), KI_TEST::LoadHierarchy(), SCH_IO_EAGLE::loadSymbolCircle(), SCH_IO_EAGLE::loadSymbolPolyLine(), SCH_IO_EAGLE::loadSymbolRectangle(), SCH_IO_EAGLE::loadSymbolWire(), PCB_POINT_EDITOR::OnSelectionChange(), LIB_SYMBOL::operator=(), SCH_IO_KICAD_SEXPR_PARSER::parseLibSymbol(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PCB_CONTROL::Paste(), pasteFootprintItemsToFootprintEditor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), BACK_ANNOTATE::processNetNameChange(), PAD::Recombine(), SCH_IO_LIB_CACHE::removeSymbol(), SCH_EDIT_TOOL::RepeatDrawItem(), SaveCopyOfZones(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), CLIPBOARD_IO::SaveSelection(), SCH_SHEET_PIN::SCH_SHEET_PIN(), LIB_SYMBOL::SetFields(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), FOOTPRINT::swapData(), PCB_TABLE::swapData(), SCH_LABEL_BASE::SwapData(), SCH_SHEET::SwapData(), SCH_SYMBOL::SwapData(), SCH_TABLE::SwapData(), BOARD_ITEM::SwapItemData(), SCH_SYMBOL::SyncOtherUnits(), and SCH_DRAWING_TOOLS::TwoClickPlace().
|
inlinevirtualinherited |
Reimplemented in DELETED_SHEET_ITEM, DELETED_BOARD_ITEM, PCB_GROUP, PCB_VIA, SCH_PIN, SCH_SHAPE, SCH_TABLE, GERBER_DRAW_ITEM, DS_DRAW_ITEM_LINE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_PAGE, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, BOARD, FOOTPRINT, TUNING_STATUS_VIEW_ITEM, NETINFO_ITEM, PAD, PCB_DIMENSION_BASE, PCB_GENERATOR, PCB_MARKER, PCB_SHAPE, PCB_TABLE, PCB_TARGET, PCB_TEXT, PCB_TRACK, PCB_ARC, ROUTER_STATUS_VIEW_ITEM, ZONE, SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, KIGFX::ORIGIN_VIEWITEM, and PCB_REFERENCE_IMAGE.
Definition at line 244 of file eda_item.h.
Referenced by BOARD_EDITOR_CONTROL::DoSetDrillOrigin(), PCB_CONTROL::DoSetGridOrigin(), DRAWING_TOOL::DrawVia(), PL_DRAWING_TOOLS::PlaceItem(), PAD_TOOL::PlacePad(), BOARD_ITEM::SetFPRelativePosition(), BOARD_ITEM::SetX(), BOARD_ITEM::SetY(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_EDIT_TOOL::Swap(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), EDIT_TOOL::Swap(), SCH_DRAWING_TOOLS::TwoClickPlace(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 119 of file eda_item.h.
References SELECTED, and EDA_ITEM::SetFlags().
Referenced by PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), KIGFX::SCH_PAINTER::draw(), PL_SELECTION_TOOL::highlight(), EE_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), SCH_LINE::MergeOverlap(), DS_PROXY_UNDO_ITEM::Restore(), EE_TOOL_BASE< T >::saveCopyInUndoList(), GERBVIEW_SELECTION_TOOL::selectVisually(), and SCH_COMMIT::Stage().
|
inline |
Definition at line 156 of file sch_screen.h.
References m_titles.
Referenced by SCH_EDIT_FRAME::InitSheet(), SCH_IO_KICAD_LEGACY::loadPageSettings(), SCH_IO_ALTIUM::ParseASCIISchematic(), SCH_IO_ALTIUM::ParseFileHeader(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), and SCH_BASE_FRAME::SetTitleBlock().
|
inlineinherited |
Definition at line 76 of file base_screen.h.
References BASE_SCREEN::m_virtualPageNumber.
Referenced by SCH_IO_KICAD_LEGACY::loadPageSettings(), PL_EDITOR_FRAME::PrintPage(), PLEDITOR_PRINTOUT::PrintPage(), SCH_EDIT_FRAME::SaveProject(), and SCHEMATIC::SetSheetNumberAndCount().
|
inlinestaticinherited |
Helper function to be used by the C++ STL sort algorithm for sorting a STL container of EDA_ITEM pointers.
aLeft | The left hand item to compare. |
aRight | The right hand item to compare. |
Definition at line 433 of file eda_item.h.
void SCH_SCREEN::TestDanglingEnds | ( | const SCH_SHEET_PATH * | aPath = nullptr , |
std::function< void(SCH_ITEM *)> * | aChangedHandler = nullptr |
||
) | const |
Test all of the connectable objects in the schematic for unused connection points.
aPath | is a sheet path to pass to UpdateDanglingState if desired. |
aChangedHandler | is an optional callback to make on each changed item. |
Definition at line 1152 of file sch_screen.cpp.
References DanglingProfileMask, Items(), PROF_TIMER::Show(), DANGLING_END_ITEM_HELPER::sort_dangling_end_items(), and PROF_TIMER::Stop().
Referenced by SCH_EDIT_FRAME::DisplayCurrentSheet(), SCH_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::TestDanglingEnds(), and SCH_MOVE_TOOL::trimDanglingLines().
|
inlineinherited |
Returns the type of object.
This attribute should never be changed after a ctor sets it, so there is no public "setter" method.
Definition at line 101 of file eda_item.h.
References EDA_ITEM::m_structType.
Referenced by CN_CONNECTIVITY_ALGO::Add(), BOARD::Add(), FOOTPRINT::Add(), CN_CLUSTER::Add(), KIGFX::PCB_VIEW::Add(), PCB_GRID_HELPER::AddConstructionItems(), PCB_POINT_EDITOR::addCorner(), PCB_GROUP::AddItem(), CONNECTION_SUBGRAPH::AddItem(), DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), ZONE_FILLER::addKnockout(), SCH_SHEET::AddPin(), SCH_BASE_FRAME::AddToScreen(), ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), SCH_MOVE_TOOL::AlignToGrid(), ALIGN_DISTRIBUTE_TOOL::AlignTop(), CN_ITEM::AnchorCount(), Append(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), TEARDROP_MANAGER::areItemsInSameZone(), PNS::TOPOLOGY::AssembleTuningPath(), SCH_LABEL_BASE::AutoplaceFields(), SCH_EDIT_FRAME::AutoRotateItem(), EE_SELECTION_TOOL::autostartEvent(), EXPORTER_STEP::buildGraphic3DShape(), PCB_NET_INSPECTOR_PANEL::buildNewItem(), SCH_SCREENS::buildScreenList(), EXPORTER_STEP::buildTrack3DShape(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), canAddCorner(), canChamferCorner(), SCH_BUS_WIRE_ENTRY::CanConnect(), SCH_BUS_BUS_ENTRY::CanConnect(), SCH_JUNCTION::CanConnect(), SCH_LABEL_BASE::CanConnect(), SCH_LINE::CanConnect(), SCH_NO_CONNECT::CanConnect(), SCH_SHEET::CanConnect(), SCH_SYMBOL::CanConnect(), PCB_POINT_EDITOR::chamferCorner(), SCH_EDIT_TOOL::ChangeTextType(), KI_TEST::CheckFootprint(), KI_TEST::CheckFpShape(), KI_TEST::CheckFpZone(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), CN_VISITOR::checkZoneItemConnection(), LIB_SYMBOL::ClassOf(), SCH_BITMAP::ClassOf(), SCH_BUS_WIRE_ENTRY::ClassOf(), SCH_BUS_BUS_ENTRY::ClassOf(), SCH_FIELD::ClassOf(), SCH_JUNCTION::ClassOf(), SCH_LABEL::ClassOf(), SCH_DIRECTIVE_LABEL::ClassOf(), SCH_GLOBALLABEL::ClassOf(), SCH_HIERLABEL::ClassOf(), SCH_LINE::ClassOf(), SCH_MARKER::ClassOf(), SCH_NO_CONNECT::ClassOf(), SCH_PIN::ClassOf(), ClassOf(), SCH_SHEET::ClassOf(), SCH_SHEET_PIN::ClassOf(), SCH_SYMBOL::ClassOf(), SCH_TABLE::ClassOf(), SCH_TABLECELL::ClassOf(), SCH_TEXT::ClassOf(), SCH_TEXTBOX::ClassOf(), BOARD::ClassOf(), BOARD_CONNECTED_ITEM::ClassOf(), FOOTPRINT::ClassOf(), NETINFO_ITEM::ClassOf(), PAD::ClassOf(), PCB_DIM_ALIGNED::ClassOf(), PCB_DIM_ORTHOGONAL::ClassOf(), PCB_DIM_RADIAL::ClassOf(), PCB_DIM_LEADER::ClassOf(), PCB_DIM_CENTER::ClassOf(), PCB_FIELD::ClassOf(), PCB_GENERATOR::ClassOf(), PCB_GROUP::ClassOf(), PCB_MARKER::ClassOf(), PCB_REFERENCE_IMAGE::ClassOf(), PCB_SHAPE::ClassOf(), PCB_TABLE::ClassOf(), PCB_TABLECELL::ClassOf(), PCB_TARGET::ClassOf(), PCB_TEXT::ClassOf(), PCB_TEXTBOX::ClassOf(), PCB_TRACK::ClassOf(), PCB_ARC::ClassOf(), PCB_VIA::ClassOf(), ZONE::ClassOf(), CONNECTION_GRAPH::collectAllDriverValues(), collidesWithArea(), SCH_ITEM::compare(), SCH_FIELD::compare(), SCH_TEXT::compare(), SCH_TEXTBOX::compare(), LIB_SYMBOL::compare(), TEARDROP_MANAGER::computeAnchorPoints(), PCB_GRID_HELPER::computeAnchors(), EE_GRID_HELPER::computeAnchors(), SCH_BUS_WIRE_ENTRY::ConnectionPropagatesTo(), SCH_LINE::ConnectionPropagatesTo(), EE_RTREE::contains(), PICKED_ITEMS_LIST::ContainsItemType(), BOARD::ConvertKIIDsToCrossReferences(), SCHEMATIC::ConvertKIIDsToRefs(), PAD_TOOL::copyPadSettings(), FOOTPRINT::CoverageRatio(), CreateItemForType(), BOARD_ADAPTER::createLayers(), PCB_BASE_FRAME::CreateNewFootprint(), SCH_DRAWING_TOOLS::createNewText(), ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), BOARD_ADAPTER::createTrackWithMargin(), EE_INSPECTION_TOOL::CrossProbe(), DRC_TOOL::CrossProbe(), DeleteItem(), SCH_MARKER::DeserializeFromString(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), BOARD_COMMIT::dirtyIntersectingZones(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), SCH_EDIT_TOOL::DoDelete(), APPEARANCE_CONTROLS::doesBoardItemNeedRebuild(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), EDIT_TOOL::DragArcTrack(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), DRAWING_TOOL::DrawDimension(), KIGFX::SCH_PAINTER::drawItemBoundingBox(), SCH_DRAWING_TOOLS::DrawSheet(), DRAWING_TOOL::DrawVia(), CONNECTION_SUBGRAPH::driverName(), CN_ITEM::Dump(), EDIT_TOOL::Duplicate(), FOOTPRINT::DuplicateItem(), EDA_ITEM_DESC::EDA_ITEM_DESC(), SCH_EDIT_TOOL::EditField(), SCH_EDIT_TOOL::editFieldText(), SYMBOL_EDITOR_EDIT_TOOL::editTextBoxProperties(), SYMBOL_EDITOR_EDIT_TOOL::editTextProperties(), enclosedByAreaFunc(), CONNECTION_GRAPH::ercCheckBusToBusConflicts(), CONNECTION_GRAPH::ercCheckBusToBusEntryConflicts(), CONNECTION_GRAPH::ercCheckBusToNetConflicts(), CONNECTION_GRAPH::ercCheckDanglingWireEndpoints(), CONNECTION_GRAPH::ercCheckFloatingWires(), CONNECTION_GRAPH::ercCheckLabels(), CONNECTION_GRAPH::ercCheckMultipleDrivers(), CONNECTION_GRAPH::ercCheckNoConnects(), DRC_ENGINE::EvalRules(), DRC_ENGINE::EvalZoneConnection(), CONNECTION_SUBGRAPH::ExchangeItem(), CONNECTION_GRAPH::ExchangeItem(), PCB_SELECTION_TOOL::FilterCollectorForFreePads(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), PCB_SELECTION_TOOL::FilterCollectorForMarkers(), PCB_SELECTION_TOOL::FilterCollectorForTableCells(), TEARDROP_MANAGER::findAnchorPointsOnTrack(), PCB_SELECTION_TOOL::FindItem(), NETLIST_EXPORTER_BASE::findNextSymbol(), PCB_IO_KICAD_SEXPR::Format(), PCB_IO_KICAD_SEXPR::format(), SCH_IO_KICAD_SEXPR::Format(), SCH_IO_KICAD_LEGACY::Format(), FormatProbeItem(), CN_ITEM::GetAnchor(), BOARD_ITEM::GetBoard(), GetBoardItemWidth(), SCH_FIELD::GetBoundingBox(), SCH_LABEL_BASE::GetBoundingBox(), PCB_TRACK::GetBoundingBox(), GetBoundingBoxes(), SCH_FIELD::GetCanonicalName(), PCB_FIELD::GetCanonicalName(), EDIT_TOOL::getChildItemsOfGroupsAndGenerators(), getClosestGroup(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), CONNECTIVITY_DATA::GetConnectedPadsAndVias(), FOOTPRINT::GetCoverageArea(), CONNECTION_GRAPH::getDefaultConnection(), SCH_FIELD::GetDefaultLayer(), SCH_FIELD::GetDrawRotation(), CONNECTION_SUBGRAPH::GetDriverPriority(), getFieldFunc(), PCB_TRACK::GetFriendlyName(), getHoleShape(), getInferredSymbols(), PCB_TRACK::GetItemDescription(), EE_GRID_HELPER::GetItemGrid(), PCB_GRID_HELPER::GetItemGrid(), PL_EDITOR_FRAME::GetLayoutFromRedoList(), PL_EDITOR_FRAME::GetLayoutFromUndoList(), SCH_FIELD::GetMenuImage(), getMinDist(), SCH_LABEL_BASE::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfo(), SCH_FIELD::GetName(), PCB_FIELD::GetName(), GetNeededJunctions(), CONNECTION_SUBGRAPH::GetNetclassesForDriver(), CONNECTIVITY_DATA::GetNetItems(), GetNetNavigatorItemText(), BOARD_ITEM::GetParentFootprint(), SCH_ITEM::GetParentSymbol(), SCH_SYMBOL::GetPinPhysicalPosition(), SCH_FIELD::GetPosition(), PANEL_SETUP_LAYERS::getRemovedLayersWithItems(), KIGFX::SCH_PAINTER::getRenderColor(), SCH_RULE_AREA::GetResolvedNetclasses(), TEXT_SEARCH_HANDLER::getResultCell(), LABEL_SEARCH_HANDLER::getResultCell(), GetSchItemAsText(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), SCH_FIELD::GetShownText(), CONVERT_TOOL::getStartEndPoints(), KIGFX::SCH_PAINTER::getTextThickness(), EDA_ITEM::GetTypeDesc(), PCBEXPR_COMPONENT_CLASS_REF::GetValue(), PCBEXPR_TYPE_REF::GetValue(), TEARDROP_MANAGER::GetWidth(), PCB_SELECTION_TOOL::grabUnconnected(), BOARD::GroupLegalOps(), EE_SELECTION_TOOL::GuessSelectionCandidates(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), API_HANDLER_PCB::handleGetBoundingBox(), hash_fp_item(), EE_SELECTION_TOOL::highlight(), BOARD_INSPECTION_TOOL::HighlightItem(), BOARD_INSPECTION_TOOL::highlightNet(), highlightNet(), SCH_FIELD::HitTest(), SCH_LABEL_BASE::HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), SCH_EDIT_TOOL::Increment(), SYMBOL_EDITOR_EDIT_TOOL::Increment(), DIALOG_FIELD_PROPERTIES::init(), SCH_EDIT_TOOL::Init(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), DRC_RTREE::Insert(), EE_RTREE::insert(), EE_COLLECTOR::Inspect(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_INSPECTION_TOOL::InspectDRCError(), isBlindBuriedViaFunc(), CONNECTIVITY_DATA::IsConnectedOnLayer(), isCopper(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), PCB_SELECTION_TOOL::isExpandableGraphicShape(), PNS_KICAD_IFACE_BASE::IsFlashedOnLayer(), CADSTAR_PCB_ARCHIVE_LOADER::isFootprint(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), SCH_FIELD::IsMandatory(), isMaskAperture(), isMicroVia(), PNS_PCBNEW_RULE_RESOLVER::IsNonPlatedSlot(), isNPTHPad(), PCB_TRACK::IsNull(), isNullAperture(), SCH_LINE::IsParallel(), isPlatedFunc(), SCH_FIELD::IsReplaceable(), TEARDROP_MANAGER::IsRound(), PNS::ROUTER::isStartingPointRoutable(), SCH_ITEM::IsType(), itemIsIncludedByFilter(), PCB_SELECTION_TOOL::itemPassesFilter(), EE_SELECTION_TOOL::itemPassesFilter(), SCH_EDIT_TOOL::JustifyText(), CLIPBOARD_IO::LoadBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), CADSTAR_SCH_ARCHIVE_LOADER::loadHierarchicalSheetPins(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), EE_SELECTION_TOOL::Main(), EDIT_POINTS_FACTORY::Make(), PCB_POINT_EDITOR::makePoints(), ALIGNED_DIMENSION_POINT_EDIT_BEHAVIOR::MakePoints(), EE_POINT_EDITOR::makePointsAndBehavior(), CONVERT_TOOL::makePolysFromChainedSegs(), MarkConnections(), CONNECTIVITY_DATA::MarkItemNetAsDirty(), CN_CONNECTIVITY_ALGO::markItemNetAsDirty(), SCH_FIELD::Matches(), memberOfGroupFunc(), memberOfSheetFunc(), SCH_LINE::MergeOverlap(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), BOARD_EDITOR_CONTROL::modifyLockSelected(), SCH_MOVE_TOOL::moveItem(), EE_SELECTION_TOOL::narrowSelection(), ARRAY_TOOL::onDialogClosed(), DIALOG_DRC::OnDRCItemSelected(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_EDIT_FRAME::OnEditItemRequest(), DIALOG_GENERATORS::OnItemSelected(), EDA_3D_CANVAS::OnMouseMove(), SCH_EDIT_FRAME::onNetNavigatorSelection(), DIALOG_GENERATORS::OnRebuildTypeClick(), PCB_POINT_EDITOR::OnSelectionChange(), DIALOG_TEXT_PROPERTIES::OnSetFocusText(), CN_VISITOR::operator()(), BOARD_ITEM::ptr_cmp::operator()(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), KI_TEST::kitest_cmp_drawings::operator()(), PCB_TRACK::cmp_tracks::operator()(), SCH_ITEM::operator<(), SCH_BUS_ENTRY_BASE::operator<(), SCH_FIELD::operator<(), SCH_JUNCTION::operator<(), SCH_LINE::operator<(), SCH_SHEET::operator<(), SCH_SYMBOL::operator<(), SCH_TABLE::operator<(), SCH_TEXT::operator<(), SCH_TEXTBOX::operator<(), PCB_REFERENCE_IMAGE::operator=(), SCH_BITMAP::operator=(), SCH_SHEET::operator=(), SCH_SYMBOL::operator=(), PAD::operator==(), PCB_DIMENSION_BASE::operator==(), PCB_GROUP::operator==(), PCB_REFERENCE_IMAGE::operator==(), PCB_SHAPE::operator==(), PCB_TABLE::operator==(), PCB_TABLECELL::operator==(), PCB_TARGET::operator==(), PCB_TEXT::operator==(), PCB_TEXTBOX::operator==(), PCB_ARC::operator==(), BOARD::operator==(), FOOTPRINT::operator==(), PCB_FIELD::operator==(), PCB_TRACK::operator==(), PCB_VIA::operator==(), ZONE::operator==(), SCH_BUS_ENTRY_BASE::operator==(), SCH_FIELD::operator==(), SCH_TEXT::operator==(), SCH_ITEM::operator==(), SCH_BITMAP::operator==(), SCH_JUNCTION::operator==(), SCH_LINE::operator==(), SCH_NO_CONNECT::operator==(), SCH_SHAPE::operator==(), SCH_SHEET::operator==(), SCH_SHEET_PIN::operator==(), SCH_SYMBOL::operator==(), SCH_TABLE::operator==(), SCH_TABLECELL::operator==(), SCH_TEXTBOX::operator==(), PAD::PAD(), SCH_COMMIT::parentObject(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_SHAPE(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_IO_KICAD_SEXPR_PARSER::parseSchField(), PCB_CONTROL::Paste(), SCH_DRAWING_TOOLS::PlaceNextSymbolUnit(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), SCH_FIELD::Print(), DIALOG_GLOBAL_EDIT_TEARDROPS::processItem(), OUTSET_ROUTINE::ProcessItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), BACK_ANNOTATE::processNetNameChange(), CONNECTION_GRAPH::processSubGraphs(), SCH_EDIT_TOOL::Properties(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), BOARD_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_GRID_HELPER::queryVisible(), BOARD_REANNOTATE_TOOL::ReannotateDuplicates(), PCB_SELECTION_TOOL::RebuildSelection(), SCH_CONNECTION::recacheName(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_BASE_FRAME::RefreshZoomDependentItems(), GENERATOR_TOOL::RegenerateSelected(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), BOARD::Remove(), CN_CONNECTIVITY_ALGO::Remove(), FOOTPRINT::Remove(), EE_RTREE::remove(), Remove(), KIGFX::PCB_VIEW::Remove(), PCB_POINT_EDITOR::removeCorner(), PCB_POINT_EDITOR::removeCornerCondition(), LIB_SYMBOL::RemoveDrawItem(), SCH_BASE_FRAME::RemoveFromScreen(), CONNECTION_SUBGRAPH::RemoveItem(), EDIT_TOOL::removeNonRootItems(), SCH_SHEET::RemovePin(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_FIELD::Replace(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), EE_SELECTION_TOOL::RequestSelection(), KI_TEST::RequireBoardItemWithTypeAndId(), CONNECTION_GRAPH::resolveAllDrivers(), SCHEMATIC::ResolveCrossReference(), CONNECTION_SUBGRAPH::ResolveDrivers(), PCB_IO_KICAD_SEXPR_PARSER::resolveGroups(), SCH_LABEL_BASE::ResolveTextVar(), BOARD::ResolveTextVar(), DS_PROXY_UNDO_ITEM::Restore(), SCH_COMMIT::Revert(), BOARD_COMMIT::Revert(), PL_EDITOR_FRAME::RollbackFromUndo(), SCH_EDIT_TOOL::Rotate(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::savePin(), SCH_IO_KICAD_SEXPR_LIB_CACHE::savePin(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveSymbolDrawItem(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), SCH_IO_KICAD_SEXPR::saveText(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveText(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveTextBox(), SCH_ITEM::Schematic(), Schematic(), SYMBOL_SEARCH_HANDLER::Search(), POWER_SEARCH_HANDLER::Search(), TEXT_SEARCH_HANDLER::Search(), PCB_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::Selectable(), EE_SELECTION_TOOL::Selectable(), PCB_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectSameSheet(), PCB_SELECTION_TOOL::selectUnconnected(), PCB_POINT_EDITOR::setAltConstraint(), SCH_FIELD::SetId(), ITEM_PICKER::SetItem(), PCB_BASE_FRAME::SetPlotSettings(), SCH_FIELD::SetPosition(), PCB_EDIT_FRAME::ShowFindDialog(), SCH_EDIT_FRAME::ShowFindReplaceDialog(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), PCB_REFERENCE_IMAGE::Similarity(), PCB_SHAPE::Similarity(), PCB_TABLECELL::Similarity(), PCB_TARGET::Similarity(), PCB_TEXT::Similarity(), PCB_TEXTBOX::Similarity(), FOOTPRINT::Similarity(), PAD::Similarity(), PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), PCB_GROUP::Similarity(), PCB_TABLE::Similarity(), PCB_TRACK::Similarity(), PCB_ARC::Similarity(), PCB_VIA::Similarity(), ZONE::Similarity(), SCH_BUS_ENTRY_BASE::Similarity(), SCH_FIELD::Similarity(), SCH_TEXT::Similarity(), SCH_BITMAP::Similarity(), SCH_JUNCTION::Similarity(), SCH_LINE::Similarity(), SCH_NO_CONNECT::Similarity(), SCH_PIN::Similarity(), SCH_SHAPE::Similarity(), SCH_SHEET::Similarity(), SCH_SHEET_PIN::Similarity(), SCH_SYMBOL::Similarity(), SCH_TABLE::Similarity(), SCH_TABLECELL::Similarity(), SCH_TEXTBOX::Similarity(), LIB_SYMBOL::Similarity(), SCH_EDITOR_CONTROL::SimProbe(), SCH_COMMIT::Stage(), PNS::LINE_PLACER::Start(), SCH_EDIT_TOOL::Swap(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), EDIT_TOOL::Swap(), FOOTPRINT::swapData(), PCB_TUNING_PATTERN::swapData(), PAD::swapData(), PCB_DIM_ALIGNED::swapData(), PCB_DIM_ORTHOGONAL::swapData(), PCB_DIM_RADIAL::swapData(), PCB_DIM_LEADER::swapData(), PCB_DIM_CENTER::swapData(), PCB_FIELD::swapData(), PCB_GROUP::swapData(), PCB_TABLE::swapData(), PCB_TABLECELL::swapData(), PCB_TARGET::swapData(), PCB_TEXT::swapData(), PCB_TEXTBOX::swapData(), PCB_TRACK::swapData(), PCB_ARC::swapData(), PCB_VIA::swapData(), ZONE::swapData(), PCB_REFERENCE_IMAGE::swapData(), SCH_BITMAP::SwapData(), SCH_FIELD::SwapData(), SCH_JUNCTION::SwapData(), SCH_NO_CONNECT::SwapData(), SCH_SHEET::SwapData(), SCH_SHEET_PIN::SwapData(), SCH_SYMBOL::SwapData(), SCH_TABLE::SwapData(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), ERC_TESTER::TestMissingNetclasses(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), ERC_TESTER::TestTextVars(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataToWindow(), DIALOG_SYMBOL_FIELDS_TABLE::TransferDataToWindow(), DIALOG_TEXT_PROPERTIES::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), PCB_TRACK::TransformShapeToPolygon(), SCH_LINE_WIRE_BUS_TOOL::TrimOverLappingWires(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), EE_SELECTION_TOOL::unhighlight(), KIGFX::PCB_VIEW::Update(), SCH_SHEET_PATH::UpdateAllScreenReferences(), DIALOG_FIELD_PROPERTIES::UpdateField(), PL_POINT_EDITOR::updateItem(), PCB_POINT_EDITOR::updateItem(), ALIGNED_DIMENSION_POINT_EDIT_BEHAVIOR::UpdateItem(), EE_TOOL_BASE< T >::updateItem(), SCH_BASE_FRAME::UpdateItem(), PCB_CONTROL::UpdateMessagePanel(), EDIT_TOOL::updateModificationPoint(), PL_POINT_EDITOR::updatePoints(), SCH_BUS_ENTRY_BASE::ViewGetLayers(), SYMBOL::ViewGetLayers(), PCB_GROUP::Visit(), SCH_SHEET::Visit(), GERBER_DRAW_ITEM::Visit(), PCB_TRACK::Visit(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem(), and DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem().
void SCH_SCREEN::Update | ( | SCH_ITEM * | aItem, |
bool | aUpdateLibSymbol = true |
||
) |
Update aItem's bounding box in the tree.
[in] | aItem | Item that needs to be updated. |
aUpdateLibSymbol | removes the library symbol as required when true. |
Definition at line 316 of file sch_screen.cpp.
References Append(), and Remove().
Referenced by CADSTAR_SCH_ARCHIVE_LOADER::Load(), SCH_IO_EAGLE::loadSheet(), SCH_EDIT_FRAME::RecalculateConnections(), SCHEMATIC::RecomputeIntersheetRefs(), SCH_COMMIT::Revert(), SCH_SHEET_PATH::UpdateAllScreenReferences(), and SCH_BASE_FRAME::UpdateItem().
void SCH_SCREEN::UpdateLocalLibSymbolLinks | ( | ) |
Initialize the LIB_SYMBOL reference for each SCH_SYMBOL found in this schematic with the local project library symbols.
Definition at line 821 of file sch_screen.cpp.
References EE_RTREE::insert(), Items(), m_libSymbols, m_rtree, EE_RTREE::remove(), and SCH_SYMBOL_T.
Referenced by SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
void SCH_SCREEN::UpdateSymbolLinks | ( | REPORTER * | aReporter = nullptr | ) |
Initialize the LIB_SYMBOL reference for each SCH_SYMBOL found in this schematic from the project SYMBOL_LIB_TABLE.
Symbol library links are set using the symbol library table and will fall back to the cache only if the cache is loaded. The cache should only be loaded when opening legacy schematic files.
[in] | aReporter | Optional REPORTER object to write status and error messages into. |
Definition at line 666 of file sch_screen.cpp.
References _, Append(), clearLibSymbols(), SYMBOL_LIB::FindSymbol(), LIB_SYMBOL::Flatten(), SYMBOL_LIBS::GetLibraryCount(), LIB_TABLE::HasLibrary(), SYMBOL_LIB::IsCache(), Items(), SYMBOL_LIB_TABLE::LoadSymbol(), m_libSymbols, Prj(), REFERENCE_FIELD, Remove(), REPORTER::ReportTail(), RPT_SEVERITY_ERROR, RPT_SEVERITY_INFO, RPT_SEVERITY_WARNING, SCH_SYMBOL_T, Schematic(), PROJECT_SCH::SchLibs(), PROJECT_SCH::SchSymbolLibTable(), UnescapeString(), VALUE_FIELD, and IO_ERROR::What().
Referenced by SCH_EDITOR_CONTROL::ExportSymbolsToLibrary().
|
overridevirtualinherited |
Return the bounding box of the item covering all its layers.
Implements KIGFX::VIEW_ITEM.
Reimplemented in SCH_PIN, GERBER_DRAW_ITEM, DS_PROXY_VIEW_ITEM, KIGFX::ORIGIN_VIEWITEM, KIGFX::ANCHOR_DEBUG, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::BEZIER_ASSISTANT, KIGFX::PREVIEW::CENTRELINE_RECT_ITEM, KIGFX::CONSTRUCTION_GEOM, KIGFX::PREVIEW::POLYGON_ITEM, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SELECTION_AREA, KIGFX::SNAP_INDICATOR, KIGFX::PREVIEW::TWO_POINT_ASSISTANT, EDIT_POINTS, FOOTPRINT, TUNING_STATUS_VIEW_ITEM, PCB_TUNING_PATTERN, PAD, PCB_DIMENSION_BASE, PCB_DIM_CENTER, PCB_MARKER, PCB_SHAPE, PCB_TEXT, PCB_TRACK, RATSNEST_VIEW_ITEM, ROUTER_PREVIEW_ITEM, ROUTER_STATUS_VIEW_ITEM, and MY_DRAWING.
Definition at line 276 of file eda_item.cpp.
References EDA_ITEM::GetBoundingBox().
Referenced by EDIT_TOOL::doMoveSelection(), GERBVIEW_FRAME::GetDocumentExtents(), EDIT_TOOL::Rotate(), and PCB_SHAPE::ViewBBox().
|
inlinevirtualinherited |
Draw the parts of the object belonging to layer aLayer.
An alternative way for drawing objects if there is no #PAINTER assigned for the view or if the PAINTER doesn't know how to paint this particular implementation of VIEW_ITEM. The preferred way of drawing is to design an appropriate PAINTER object, the method below is intended only for quick hacks and debugging purposes.
aLayer | is the current drawing layer. |
aView | is a pointer to the VIEW device we are drawing on. |
Reimplemented in DS_PROXY_VIEW_ITEM, KIGFX::PREVIEW::SIMPLE_OVERLAY_ITEM, EDIT_POINTS, TUNING_STATUS_VIEW_ITEM, RATSNEST_VIEW_ITEM, ROUTER_PREVIEW_ITEM, ROUTER_STATUS_VIEW_ITEM, MY_DRAWING, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::BEZIER_ASSISTANT, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SELECTION_AREA, KIGFX::PREVIEW::TWO_POINT_ASSISTANT, PCB_TUNING_PATTERN, KIGFX::ORIGIN_VIEWITEM, KIGFX::ANCHOR_DEBUG, KIGFX::CONSTRUCTION_GEOM, KIGFX::SNAP_INDICATOR, KIGFX::VIEW_GROUP, and KIGFX::VIEW_OVERLAY.
Definition at line 119 of file view_item.h.
Referenced by KIGFX::VIEW::draw(), and KIGFX::VIEW::updateItemGeometry().
|
overridevirtualinherited |
Return the all the layers within the VIEW the object is painted on.
For instance, a PAD spans zero or more copper layers and a few technical layers. ViewDraw() or PAINTER::Draw() is repeatedly called for each of the layers returned by ViewGetLayers(), depending on the rendering order.
Implements KIGFX::VIEW_ITEM.
Reimplemented in SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_ITEM, SCH_JUNCTION, SCH_LABEL_BASE, SCH_GLOBALLABEL, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_RULE_AREA, SCH_SHAPE, SCH_SHEET, SCH_TABLE, SCH_TEXT, SYMBOL, GERBER_DRAW_ITEM, BOARD_ITEM, DS_DRAW_ITEM_BASE, DS_PROXY_VIEW_ITEM, KIGFX::ORIGIN_VIEWITEM, KIGFX::ANCHOR_DEBUG, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::BEZIER_ASSISTANT, KIGFX::CONSTRUCTION_GEOM, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SIMPLE_OVERLAY_ITEM, KIGFX::PREVIEW::TWO_POINT_ASSISTANT, EDIT_POINTS, FOOTPRINT, TUNING_STATUS_VIEW_ITEM, PCB_TUNING_PATTERN, PAD, PCB_GROUP, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, RATSNEST_VIEW_ITEM, ROUTER_PREVIEW_ITEM, ROUTER_STATUS_VIEW_ITEM, ZONE, and MY_DRAWING.
Definition at line 283 of file eda_item.cpp.
|
inlinevirtualinherited |
Return the level of detail (LOD) of the item.
A level of detail is the minimal VIEW scale that is sufficient for an item to be shown on a given layer.
aLayer | is the current drawing layer. |
aView | is a pointer to the VIEW device we are drawing on. |
Reimplemented in SCH_LINE, GERBER_DRAW_ITEM, FOOTPRINT, PAD, PCB_FIELD, PCB_GROUP, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 142 of file view_item.h.
Referenced by PCB_GRID_HELPER::computeAnchors(), PNS_KICAD_IFACE::IsItemVisible(), KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()(), EE_GRID_HELPER::queryVisible(), and PCB_GRID_HELPER::queryVisible().
|
inlineinherited |
Definition at line 148 of file view_item.h.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::draw(), KIGFX::VIEW::HasItem(), KIGFX::VIEW::Hide(), KIGFX::VIEW::invalidateItem(), KIGFX::VIEW::IsHiddenOnOverlay(), KIGFX::VIEW::IsVisible(), KIGFX::VIEW::UPDATE_COLOR_VISITOR::operator()(), KIGFX::VIEW::UPDATE_DEPTH_VISITOR::operator()(), KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()(), KIGFX::VIEW::RECACHE_ITEM_VISITOR::operator()(), KIGFX::VIEW::CLEAR_LAYER_CACHE_VISITOR::operator()(), KIGFX::VIEW::SetVisible(), KIGFX::VIEW::Update(), KIGFX::VIEW::updateItemColor(), KIGFX::VIEW::updateItemGeometry(), and KIGFX::VIEW::updateLayers().
|
virtualinherited |
May be re-implemented for each derived class in order to handle all the types given by its member data.
Implementations should call inspector->Inspect() on types in aScanTypes, and may use IterateForward() to do so on lists of such data.
inspector | An INSPECTOR instance to use in the inspection. |
testData | Arbitrary data used by the inspector. |
aScanTypes | Which KICAD_T types are of interest and the order in which they should be processed. |
Reimplemented in PCB_GROUP, LIB_SYMBOL, SCH_SHEET, SCH_SYMBOL, SCH_TABLE, GBR_LAYOUT, GERBER_DRAW_ITEM, GERBER_FILE_IMAGE, FOOTPRINT, PCB_TABLE, PCB_TRACK, SCH_LABEL_BASE, and BOARD.
Definition at line 94 of file eda_item.cpp.
References EDA_ITEM::GetClass(), and EDA_ITEM::IsType().
Referenced by PCB_TYPE_COLLECTOR::Collect(), PCB_LAYER_COLLECTOR::Collect(), GENERAL_COLLECTOR::Collect(), GERBER_COLLECTOR::Collect(), EDA_ITEM::IterateForward(), FOOTPRINT_PREVIEW_PANEL::renderFootprint(), and BOARD::UpdateUserUnits().
|
inlineinherited |
Definition at line 128 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by EE_SELECTION_TOOL::selectMultiple().
|
private |
List of bus aliases stored in this screen.
Definition at line 670 of file sch_screen.h.
Referenced by AddBusAlias(), ClearBusAliases(), and GetBusAliases().
|
private |
Definition at line 655 of file sch_screen.h.
Referenced by GetAuxOrigin(), and SetAuxOrigin().
|
inherited |
Center on screen.
If true (0.0) is centered on screen coordinates can be < 0 and > 0 except for schematics. false: when coordinates can only be >= 0 (schematics).
Definition at line 96 of file base_screen.h.
Referenced by BASE_SCREEN::BASE_SCREEN(), BASE_SCREEN::InitDataPoints(), SCH_SCREEN(), and SYMBOL_DIFF_FRAME::SYMBOL_DIFF_FRAME().
|
private |
The list of sheet paths sharing this screen.
Used in some annotation calculations to update alternate references.
Note: a screen having a m_refCount = 1 (only one sheet path using it) can have many sheet paths sharing this screen if it is inside another sheet having many instances.
Definition at line 650 of file sch_screen.h.
Referenced by GetClientSheetPaths().
|
staticinherited |
the name of the drawing sheet file, or empty to use the default drawing sheet
Definition at line 85 of file base_screen.h.
Referenced by PL_EDITOR_FRAME::GetCurrentFileName(), SCH_EDIT_FRAME::importFile(), LoadBoard(), PCBNEW_JOBS_HANDLER::loadOverrideDrawingSheet(), SCH_EDIT_FRAME::LoadProjectSettings(), PCB_EDIT_FRAME::LoadProjectSettings(), BOARD_EDITOR_CONTROL::PageSettings(), SCH_EDITOR_CONTROL::PageSetup(), DIALOG_PAGES_SETTINGS::SavePageSettings(), PCB_EDIT_FRAME::SaveProjectLocalSettings(), SCH_EDIT_FRAME::saveProjectSettings(), PL_EDITOR_FRAME::SetCurrentFileName(), and DIALOG_PAGES_SETTINGS::TransferDataToWindow().
|
inherited |
offsets for drawing the circuit on the screen
Definition at line 88 of file base_screen.h.
Referenced by SCH_EDIT_FRAME::DrawCurrentSheetToClipboard(), BASE_SCREEN::InitDataPoints(), PLEDITOR_PRINTOUT::PrintPage(), and SCH_PRINTOUT::PrintPage().
|
private |
Definition at line 667 of file sch_screen.h.
Referenced by FileExists(), and SetFileExists().
|
private |
Definition at line 640 of file sch_screen.h.
Referenced by GetFileFormatVersionAtLoad(), and SetFileFormatVersionAtLoad().
|
private |
Definition at line 639 of file sch_screen.h.
Referenced by GetFileName(), and SetFileName().
|
privateinherited |
Indicates current drawing has been modified.
Definition at line 132 of file base_screen.h.
Referenced by BASE_SCREEN::BASE_SCREEN(), BASE_SCREEN::IsContentModified(), and BASE_SCREEN::SetContentModified().
|
protectedinherited |
Definition at line 499 of file eda_item.h.
Referenced by EDA_ITEM::ClearFlags(), DS_DRAW_ITEM_BASE::DS_DRAW_ITEM_BASE(), SCH_PIN::GetBoundingBox(), EDA_ITEM::GetEditFlags(), EDA_ITEM::GetFlags(), PCB_TRACK::GetMsgPanelInfoBase_Common(), SCH_LINE::GetSelectedPoints(), EDA_ITEM::GetTempFlags(), EDA_ITEM::HasFlag(), SCH_FIELD::HitTest(), SCH_JUNCTION::HitTest(), SCH_LINE::HitTest(), SCH_SHAPE::HitTest(), SCH_SYMBOL::HitTest(), SCH_TEXT::HitTest(), SCH_PIN::HitTest(), ZONE::InitDataFromSrcInCopyCtor(), EDA_ITEM::IsBrightened(), SCH_ITEM::IsConnected(), EDA_ITEM::IsEntered(), EDA_ITEM::IsModified(), EDA_ITEM::IsMoving(), EDA_ITEM::IsNew(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), EDA_ITEM::IsShownAsBitmap(), SCH_LINE::MirrorHorizontally(), SCH_LINE::MirrorVertically(), EDA_ITEM::operator=(), PCB_SHAPE::operator==(), SCH_LINE::Rotate(), EDA_ITEM::SetFlags(), PCB_SHAPE::Similarity(), LIB_SYMBOL::Similarity(), PCB_SHAPE::swapData(), PCB_REFERENCE_IMAGE::swapData(), SCH_ITEM::SwapFlags(), SCH_PIN::ViewBBox(), and EDA_ITEM::XorFlags().
|
privateinherited |
Additional transparency for diff'ing items.
Definition at line 169 of file view_item.h.
Referenced by KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()().
|
protectedinherited |
Definition at line 501 of file eda_item.h.
Referenced by ZONE::InitDataFromSrcInCopyCtor(), EDA_ITEM::IsForceVisible(), EDA_ITEM::operator=(), PCB_SHAPE::operator==(), EDA_ITEM::SetForceVisible(), PCB_SHAPE::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
privateinherited |
Definition at line 167 of file view_item.h.
|
private |
Read only status of the screen file.
Flag to indicate the file associated with this screen has been created.
Definition at line 664 of file sch_screen.h.
Referenced by IsReadOnly(), and SetFileReadOnly().
|
privateinherited |
Definition at line 166 of file view_item.h.
double SCH_SCREEN::m_LastZoomLevel |
last value for the zoom level, useful in Eeschema when changing the current displayed sheet to reuse the same zoom level when back to the sheet using this screen
Definition at line 636 of file sch_screen.h.
Referenced by SCH_NAVIGATE_TOOL::changeSheet(), SCH_FIND_REPLACE_TOOL::FindNext(), DIALOG_ERC::OnERCItemSelected(), SCH_EDIT_FRAME::OnPageSettingsChange(), SCH_EDITOR_CONTROL::Revert(), and SCH_SCREEN().
|
private |
Library symbols required for this schematic.
Definition at line 673 of file sch_screen.h.
Referenced by AddLibSymbol(), Append(), clearLibSymbols(), FixupEmbeddedData(), getLibSymbolNameMatches(), GetLibSymbols(), Remove(), UpdateLocalLibSymbolLinks(), and UpdateSymbolLinks().
|
inherited |
Relative Screen cursor coordinate (on grid) in user units.
(coordinates from last reset position)
Definition at line 90 of file base_screen.h.
Referenced by DRAWING_TOOL::drawShape(), BASE_SCREEN::InitDataPoints(), COMMON_TOOLS::ResetLocalCoords(), SCH_BASE_FRAME::UpdateStatusBar(), GERBVIEW_FRAME::UpdateStatusBar(), PCB_BASE_FRAME::UpdateStatusBar(), and PL_EDITOR_FRAME::UpdateStatusBar().
|
private |
Definition at line 658 of file sch_screen.h.
Referenced by Append(), and SCH_SCREEN().
|
protectedinherited |
The number of BASE_SCREEN objects in this design.
This currently only has meaning for SCH_SCREEN objects because PCB_SCREEN object are limited to a single file. The count is virtual because SCH_SCREEN objects can be used more than once so the screen (page) count can be more than the number of screen objects.
Definition at line 111 of file base_screen.h.
Referenced by BASE_SCREEN::BASE_SCREEN(), Clear(), BASE_SCREEN::GetPageCount(), and BASE_SCREEN::SetPageCount().
|
protectedinherited |
A user defined string page number used for printing and plotting.
This currently only has meaning for SCH_SCREEN objects because PCB_SCREEN object are limited to a single file. This must be set before displaying, printing, or plotting the current sheet. If empty, the m_virtualPageNumber value is converted to a string.
Definition at line 129 of file base_screen.h.
Referenced by BASE_SCREEN::GetPageNumber(), and BASE_SCREEN::SetPageNumber().
|
private |
Definition at line 653 of file sch_screen.h.
Referenced by GetPageSettings(), SCH_SCREEN(), and SetPageSettings().
|
protectedinherited |
Linked list: Link (parent struct)
Definition at line 500 of file eda_item.h.
Referenced by SCH_FIELD::DoHypertextAction(), SCH_FIELD::GetBoundingBox(), SCH_FIELD::GetCanonicalName(), PCB_FIELD::GetCanonicalName(), SCH_FIELD::GetDefaultLayer(), SCH_FIELD::GetDrawRotation(), SCH_FIELD::GetMenuImage(), PAD::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), SCH_FIELD::GetName(), PCB_FIELD::GetName(), SCH_SHEET_PIN::GetParent(), BOARD_ITEM::GetParent(), EDA_ITEM::GetParent(), BOARD_ITEM::GetParentAsString(), SCH_FIELD::GetParentPosition(), SCH_FIELD::GetPosition(), SCH_FIELD::GetShownText(), SCH_FIELD::HitTest(), SCH_FIELD::IsMandatory(), SCH_FIELD::IsReplaceable(), SCH_PIN::IsStacked(), SCH_FIELD::Matches(), EDA_ITEM::operator=(), PAD::operator==(), PAD::PAD(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), SCH_FIELD::Print(), SCH_FIELD::Replace(), SCH_LABEL_BASE::ResolveTextVar(), SCH_SYMBOL::SCH_SYMBOL(), SCH_FIELD::SetId(), EDA_ITEM::SetModified(), EDA_ITEM::SetParent(), SCH_FIELD::SetPosition(), PAD::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
private |
Definition at line 641 of file sch_screen.h.
Referenced by DecRefCount(), GetRefCount(), IncRefCount(), and SCH_SCREEN().
|
private |
Definition at line 656 of file sch_screen.h.
Referenced by Append(), CheckIfOnDrawList(), Clear(), FreeDrawList(), HasItems(), IsEmpty(), Items(), Plot(), Remove(), and UpdateLocalLibSymbolLinks().
|
inherited |
Current scroll center point in logical units.
Definition at line 100 of file base_screen.h.
Referenced by EDA_DRAW_PANEL_GAL::DoRePaint(), and DIALOG_ERC::OnERCItemSelected().
|
private |
Definition at line 690 of file sch_screen.h.
Referenced by GetSheetInstances(), SCH_IO_ALTIUM::LoadSchematicFile(), SCH_IO_KICAD_SEXPR_PARSER::parseSchSheetInstances(), and SCH_IO_ALTIUM::ParseSheetSymbol().
|
inherited |
Coordinates in drawing units of the current view position (upper left corner of device)
Definition at line 93 of file base_screen.h.
Referenced by SCH_EDIT_FRAME::DrawCurrentSheetToClipboard(), PLEDITOR_PRINTOUT::PrintPage(), SCH_PRINTOUT::PrintPage(), and DIALOG_FIND::search().
|
privateinherited |
Run time identification, keep private so it can never be changed after a ctor sets it.
See comment near SetType() regarding virtual functions.
Definition at line 496 of file eda_item.h.
Referenced by EDA_ITEM::IsType(), EDA_ITEM::operator=(), and EDA_ITEM::Type().
|
private |
The list of symbol instances loaded from the schematic file.
This list is only used to as temporary storage when the schematic file is loaded. If the screen is the root sheet, then this information is used to update the SCH_SYMBOL instance reference and unit information after the entire schematic is loaded and is never used again. If this screen is not the root sheet, then the schematic file is the root sheet of another project and this information is saved unchanged back to the schematic file.
Definition at line 689 of file sch_screen.h.
Referenced by GetSymbolInstances(), and SCH_IO_KICAD_SEXPR_PARSER::parseSchSymbolInstances().
|
private |
Definition at line 654 of file sch_screen.h.
Referenced by Clear(), GetTitleBlock(), and SetTitleBlock().
|
private |
A unique identifier for each schematic file.
As of right now, this only has meaning for the root schematic. In the future, it may be useful to detect unexpected hierarchy changes.
Definition at line 698 of file sch_screen.h.
Referenced by AssignNewUuid(), SCH_IO_KICAD_SEXPR::Format(), GetUuid(), and SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic().
|
inherited |
Definition at line 489 of file eda_item.h.
Referenced by BOARD::Add(), SCH_SYMBOL::AddHierarchicalReference(), RC_ITEM::AddItem(), SCH_EDIT_FRAME::AnnotateSymbols(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), SCH_SHEET_PATH::CheckForMissingSymbolInstances(), SCH_SHEET_PATH::Cmp(), SCH_ITEM::compare(), SCHEMATIC::ConvertRefsToKIIDs(), MICROWAVE_TOOL::createMicrowaveInductor(), SCH_EDIT_FRAME::CreateScreens(), SCH_LABEL::Deserialize(), SCH_LINE::Deserialize(), FOOTPRINT::Deserialize(), PAD::Deserialize(), PCB_DIMENSION_BASE::Deserialize(), PCB_SHAPE::Deserialize(), PCB_TEXT::Deserialize(), PCB_TEXTBOX::Deserialize(), PCB_TRACK::Deserialize(), PCB_ARC::Deserialize(), PCB_VIA::Deserialize(), ZONE::Deserialize(), SCH_MARKER::DeserializeFromString(), ZONE_FILLER_TOOL::DirtyZone(), DRAWING_TOOL::DrawVia(), LIB_SYMBOL::Duplicate(), BOARD_ITEM::Duplicate(), FOOTPRINT::Duplicate(), SCH_ITEM::Duplicate(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), FOOTPRINT::DuplicateItem(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), NETLIST_EXPORTER_ALLEGRO::extractComponentsInfo(), SCH_SHEET_LIST::FillItemMap(), BOARD::FillItemMap(), MULTICHANNEL_TOOL::findOtherItemsInRuleArea(), MULTICHANNEL_TOOL::findRoutedConnections(), KIGIT_PCB_MERGE::findSetDifferences(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), PCB_IO_KICAD_SEXPR::format(), SCH_IO_KICAD_SEXPR::Format(), SCH_PIN::GetDefaultNetName(), SCH_SHEET_PATH::GetItem(), BOARD::GetItem(), RC_ITEM::GetJsonViolation(), PAD::GetMsgPanelInfo(), DIALOG_BOARD_REANNOTATE::GetNewRefDes(), BOARD_ITEM::GetParentAsString(), SCH_MARKER::GetUUID(), PCB_MARKER::GetUUID(), FIELDS_EDITOR_GRID_DATA_MODEL::GetValue(), FIELDS_EDITOR_GRID_DATA_MODEL::groupMatch(), ZONE::HigherPriority(), SCH_SHEET_PATH::IsContainedWithin(), PCB_IO_KICAD_LEGACY::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PCB_EDIT_FRAME::LoadFootprints(), SCH_IO_KICAD_LEGACY::loadHierarchy(), PCB_IO_KICAD_LEGACY::loadPCB_TARGET(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), EESCHEMA_HELPERS::LoadSchematic(), SCH_IO_ALTIUM::LoadSchematicFile(), SCH_IO_EAGLE::LoadSchematicFile(), SCH_EDIT_FRAME::LoadSheetFromFile(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), PCB_IO_KICAD_LEGACY::loadTrackList(), NETLIST_EXPORTER_XML::makeSymbols(), SCH_EDIT_FRAME::mapExistingAnnotation(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), BOARD_ITEM::ptr_cmp::operator()(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), CompareByUuid::operator()(), FOOTPRINT::cmp_pads::operator()(), PCB_TRACK::cmp_tracks::operator()(), FOOTPRINT::cmp_zones::operator()(), SCH_SYMBOL::operator<(), PAD::operator==(), SCH_FIELD::operator==(), PAD::PAD(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), PCB_IO_KICAD_SEXPR_PARSER::parseTextBoxContent(), SCH_EDITOR_CONTROL::Paste(), SCH_SHEET_PATH::PathAsString(), PCB_VIA::PCB_VIA(), PCB_CONTROL::placeBoardItems(), processTextItem(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD::Remove(), SCH_SYMBOL::RemoveInstance(), FIELDS_EDITOR_GRID_DATA_MODEL::RemoveSymbol(), FIELDS_EDITOR_GRID_DATA_MODEL::RenameColumn(), SCH_SCREENS::ReplaceDuplicateTimeStamps(), PCB_IO_KICAD_SEXPR_PARSER::resolveGroups(), SCH_IO_KICAD_SEXPR::saveBitmap(), SCH_IO_KICAD_SEXPR::saveBusEntry(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_IO_KICAD_SEXPR::saveJunction(), SCH_IO_KICAD_SEXPR::saveLine(), SCH_IO_KICAD_SEXPR::saveNoConnect(), SCH_EDIT_FRAME::SaveProject(), SCH_IO_KICAD_SEXPR::saveShape(), SCH_IO_KICAD_LEGACY::saveSheet(), SCH_IO_KICAD_SEXPR::saveSheet(), SCH_IO_KICAD_LEGACY::saveSymbol(), SCH_IO_KICAD_SEXPR::saveSymbol(), SCH_IO_KICAD_SEXPR::saveText(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_PIN::SCH_PIN(), SCH_REFERENCE::SCH_REFERENCE(), SCH_SHEET::SCH_SHEET(), SCH_SYMBOL::SCH_SYMBOL(), SCH_LABEL::Serialize(), SCH_LINE::Serialize(), FOOTPRINT::Serialize(), PAD::Serialize(), PCB_DIMENSION_BASE::Serialize(), PCB_SHAPE::Serialize(), PCB_TEXT::Serialize(), PCB_TEXTBOX::Serialize(), PCB_TRACK::Serialize(), PCB_ARC::Serialize(), PCB_VIA::Serialize(), ZONE::Serialize(), RC_ITEM::SetItems(), SCH_EDITOR_CONTROL::setPastedSymbolInstances(), FIELDS_EDITOR_GRID_DATA_MODEL::SetValue(), PAD::Similarity(), PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), SCH_BUS_ENTRY_BASE::Similarity(), SCH_FIELD::Similarity(), SCH_LABEL_BASE::Similarity(), SCH_TEXT::Similarity(), SCH_BITMAP::Similarity(), SCH_JUNCTION::Similarity(), SCH_LINE::Similarity(), SCH_NO_CONNECT::Similarity(), SCH_PIN::Similarity(), SCH_SHAPE::Similarity(), SCH_TEXTBOX::Similarity(), LIB_SYMBOL::Similarity(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_SYMBOL::SyncOtherUnits(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), testGroupEqual(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), FIELDS_EDITOR_GRID_DATA_MODEL::updateDataStoreSymbolField(), SCH_EDITOR_CONTROL::updatePastedSheet(), SCH_EDITOR_CONTROL::updatePastedSymbol(), SCH_SHEET_LIST::UpdateSymbolInstanceData(), and NETLIST_EXPORTER_ORCADPCB2::WriteNetlist().
|
privateinherited |
Definition at line 168 of file view_item.h.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::OnDestroy(), KIGFX::VIEW::Remove(), KIGFX::VIEW::updateBbox(), KIGFX::VIEW::updateLayers(), and KIGFX::VIEW_ITEM::~VIEW_ITEM().
|
protectedinherited |
An integer based page number used for printing a range of pages.
This page number is set before printing and plotting because page numbering does not reflect the actual page number in complex hiearachies in SCH_SCREEN objects.
Definition at line 119 of file base_screen.h.
Referenced by BASE_SCREEN::BASE_SCREEN(), Clear(), BASE_SCREEN::GetPageNumber(), BASE_SCREEN::GetVirtualPageNumber(), and BASE_SCREEN::SetVirtualPageNumber().
|
private |
Definition at line 661 of file sch_screen.h.
Referenced by SCH_EDIT_FRAME::DisplayCurrentSheet(), SCH_EDIT_FRAME::initScreenZoom(), and SCH_SCREEN().
|
private |
Definition at line 593 of file sch_screen.h.
|
private |
Definition at line 596 of file sch_screen.h.
|
private |
Definition at line 595 of file sch_screen.h.
|
private |
Definition at line 594 of file sch_screen.h.