89    default: wxFAIL_MSG( wxS( 
"SCH_BUS_WIRE_ENTRY ctor: unexpected quadrant" ) );
 
 
  128    return ( 
m_pos == aPosition || 
GetEnd() == aPosition );
 
 
  141    wxCHECK_RET( item, wxT( 
"Cannot swap bus entry data with invalid item." ) );
 
 
  248    aItemList.push_back( item );
 
  251    aItemList.push_back( item1 );
 
 
  258    aItemList.push_back( item );
 
  261    aItemList.push_back( item1 );
 
 
  287                                              std::vector<DANGLING_END_ITEM>& aItemListByPos,
 
  296    bool has_wire[2] = { 
false };
 
  297    bool has_bus[2] = { 
false };
 
  299    for( 
unsigned ii = 0; ii < aItemListByType.size(); ii++ )
 
  335    if( ( has_wire[0] && has_bus[1] ) || ( has_wire[1] && has_bus[0] ) )
 
  337    else if( has_wire[0] || has_bus[0] )
 
  339    else if( has_wire[1] || has_bus[1] )
 
 
  347                                             std::vector<DANGLING_END_ITEM>& aItemListByPos,
 
  356    for( 
unsigned ii = 0; ii < aItemListByType.size(); ii++ )
 
 
  409    wxCHECK( busEntry, 
false );
 
 
  420    return wxString( 
_( 
"Bus to wire entry" ) );
 
 
  426    return wxString( 
_( 
"Bus to bus entry" ) );
 
 
  473                               int aUnit, 
int aBodyStyle, 
const VECTOR2I& aOffset, 
bool aDimmed )
 
  485    penWidth = std::max( penWidth, renderSettings->
GetMinPenWidth() );
 
 
  498                                          std::vector<MSG_PANEL_ITEM>& aList )
 
  509    aList.emplace_back( 
_( 
"Bus Entry Type" ), msg );
 
  521            aList.emplace_back( 
_( 
"Resolved Netclass" ),
 
 
  534    if( 
GetLayer() != symbol->GetLayer() )
 
  535        return GetLayer() < symbol->GetLayer();
 
  543    if( 
GetEnd().x != symbol->GetEnd().
x )
 
  544        return GetEnd().
x < symbol->GetEnd().x;
 
  546    return GetEnd().
y < symbol->GetEnd().y;
 
 
  636        if( wireLineStyleEnum.
Choices().GetCount() == 0 )
 
 
 
constexpr EDA_IU_SCALE schIUScale
 
BITMAPS
A list of all bitmap identifiers.
 
constexpr BOX2< Vec > & Inflate(coord_type dx, coord_type dy)
Inflates the rectangle horizontally by dx and vertically by dy.
 
constexpr BOX2< Vec > & Normalize()
Ensure that the height and width are positive.
 
constexpr bool Contains(const Vec &aPoint) const
 
constexpr void SetEnd(coord_type x, coord_type y)
 
constexpr bool Intersects(const BOX2< Vec > &aRect) const
 
static const COLOR4D UNSPECIFIED
For legacy support; used as a value to indicate color hasn't been set yet.
 
Helper class used to store the state of schematic items that can be connected to other schematic item...
 
DANGLING_END_T GetType() const
 
EDA_ITEM * GetItem() const
 
VECTOR2I GetPosition() const
 
The base class for create windows for drawing purpose.
 
KICAD_T Type() const
Returns the type of object.
 
EDA_ITEM(EDA_ITEM *parent, KICAD_T idType, bool isSCH_ITEM=false, bool isBOARD_ITEM=false)
 
virtual const wxString & GetText() const
Return the string associated with the text object.
 
ENUM_MAP & Map(T aValue, const wxString &aName)
 
static ENUM_MAP< T > & Instance()
 
A color representation with 4 components: red, green, blue, alpha.
 
int GetDefaultPenWidth() const
 
int GetMinPenWidth() const
 
const COLOR4D & GetLayerColor(int aLayer) const
Return the color used to draw a layer.
 
COLOR4D GetSchematicColor(bool aIsForSave=false) const
 
Base plotter engine class.
 
void MoveTo(const VECTOR2I &pos)
 
virtual void SetDash(int aLineWidth, LINE_STYLE aLineStyle)=0
 
void FinishTo(const VECTOR2I &pos)
 
virtual void SetCurrentLineWidth(int width, void *aData=nullptr)=0
Set the line width for the next drawing.
 
virtual void SetColor(const COLOR4D &color)=0
 
Provide class metadata.Helper macro to map type hashes to names.
 
void InheritsAfter(TYPE_ID aDerived, TYPE_ID aBase)
Declare an inheritance relationship between types.
 
static PROPERTY_MANAGER & Instance()
 
PROPERTY_BASE & AddProperty(PROPERTY_BASE *aProperty, const wxString &aGroup=wxEmptyString)
Register a property.
 
Class for a bus to bus entry.
 
int GetPenWidth() const override
 
void GetEndPoints(std::vector< DANGLING_END_ITEM > &aItemList) override
Add the schematic item end points to aItemList if the item has end points.
 
EDA_ITEM * Clone() const override
Create a duplicate of this item with linked list members set to NULL.
 
wxString GetItemDescription(UNITS_PROVIDER *aUnitsProvider, bool aFull) const override
Return a user-visible description string of this item.
 
BITMAPS GetMenuImage() const override
Return a pointer to an image to be used in menus.
 
SCH_BUS_BUS_ENTRY(const VECTOR2I &pos=VECTOR2I(0, 0), bool aFlipY=false)
 
bool UpdateDanglingState(std::vector< DANGLING_END_ITEM > &aItemListByType, std::vector< DANGLING_END_ITEM > &aItemListByPos, const SCH_SHEET_PATH *aPath=nullptr) override
Test the schematic item to aItemList to check if it's dangling state has changed.
 
SCH_ITEM * m_connected_bus_items[2]
Pointer to the bus items (usually bus wires) connected to this bus-bus entry (either or both may be n...
 
Base class for a bus or wire entry.
 
bool HasConnectivityChanges(const SCH_ITEM *aItem, const SCH_SHEET_PATH *aInstance=nullptr) const override
Check if aItem has connectivity changes against this object.
 
double Similarity(const SCH_ITEM &aItem) const override
Return a measure of how likely the other object is to represent the same object.
 
LINE_STYLE m_lastResolvedLineStyle
 
COLOR4D GetBusEntryColor() const
 
bool HitTest(const VECTOR2I &aPosition, int aAccuracy=0) const override
Test if aPosition is inside or on the boundary of this item.
 
void SetBusEntryColor(const COLOR4D &aColor)
 
std::vector< int > ViewGetLayers() const override
Return the all the layers within the VIEW the object is painted on.
 
VECTOR2I GetPosition() const override
 
void SetPenWidth(int aWidth)
 
void GetMsgPanelInfo(EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) override
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes.
 
void SetWireStyle(WIRE_STYLE aStyle)
 
void swapData(SCH_ITEM *aItem) override
Swap the internal data structures aItem with the schematic item.
 
void MirrorHorizontally(int aCenter) override
Mirror item horizontally about aCenter.
 
bool operator==(const SCH_ITEM &aItem) const override
 
std::vector< VECTOR2I > GetConnectionPoints() const override
Add all the connection points for this item to aPoints.
 
void SetLineStyle(LINE_STYLE aStyle)
 
bool IsConnectable() const override
 
int GetPenWidth() const override
 
WIRE_STYLE GetWireStyle() const
 
void Plot(PLOTTER *aPlotter, bool aBackground, const SCH_PLOT_OPTS &aPlotOpts, int aUnit, int aBodyStyle, const VECTOR2I &aOffset, bool aDimmed) override
Plot the item to aPlotter.
 
bool IsDangling() const override
 
COLOR4D m_lastResolvedColor
 
void MirrorVertically(int aCenter) override
Mirror item vertically about aCenter.
 
SCH_BUS_ENTRY_BASE(KICAD_T aType, const VECTOR2I &pos=VECTOR2I(0, 0), bool aFlipY=false)
 
LINE_STYLE GetEffectiveLineStyle() const
 
const BOX2I GetBoundingBox() const override
Return the orthogonal bounding box of this object for display purposes.
 
void Rotate(const VECTOR2I &aCenter, bool aRotateCCW) override
Rotate the item around aCenter 90 degrees in the clockwise direction.
 
bool operator<(const SCH_ITEM &aItem) const override
 
bool doIsConnected(const VECTOR2I &aPosition) const override
Provide the object specific test to see if it is connected to aPosition.
 
Class for a wire to bus entry.
 
SCH_BUS_WIRE_ENTRY(const VECTOR2I &pos=VECTOR2I(0, 0), bool aFlipY=false)
 
wxString GetItemDescription(UNITS_PROVIDER *aUnitsProvider, bool aFull) const override
Return a user-visible description string of this item.
 
EDA_ITEM * Clone() const override
Create a duplicate of this item with linked list members set to NULL.
 
BITMAPS GetMenuImage() const override
Return a pointer to an image to be used in menus.
 
int GetPenWidth() const override
 
bool UpdateDanglingState(std::vector< DANGLING_END_ITEM > &aItemListByType, std::vector< DANGLING_END_ITEM > &aItemListByPos, const SCH_SHEET_PATH *aPath=nullptr) override
Test the schematic item to aItemList to check if it's dangling state has changed.
 
void GetEndPoints(std::vector< DANGLING_END_ITEM > &aItemList) override
Add the schematic item end points to aItemList if the item has end points.
 
virtual bool ConnectionPropagatesTo(const EDA_ITEM *aItem) const override
Return true if this item should propagate connection info to aItem.
 
SCH_ITEM * m_connected_bus_item
Pointer to the bus item (usually a bus wire) connected to this bus-wire entry, if it is connected to ...
 
Each graphical item can have a SCH_CONNECTION describing its logical connection (to a bus or net).
 
void AppendInfoToMsgPanel(std::vector< MSG_PANEL_ITEM > &aList) const
Adds information about the connection object to aList.
 
static bool IsBusLabel(const wxString &aLabel)
Test if aLabel has a bus notation.
 
Schematic editor (Eeschema) main window.
 
Base class for any item which can be embedded within the SCHEMATIC container class,...
 
SCH_RENDER_SETTINGS * getRenderSettings(PLOTTER *aPlotter) const
 
std::shared_ptr< NETCLASS > GetEffectiveNetClass(const SCH_SHEET_PATH *aSheet=nullptr) const
 
SCH_LAYER_ID GetLayer() const
Return the layer this item is on.
 
bool IsConnectivityDirty() const
 
SCH_ITEM(EDA_ITEM *aParent, KICAD_T aType, int aUnit=0, int aBodyStyle=0)
 
SCH_CONNECTION * Connection(const SCH_SHEET_PATH *aSheet=nullptr) const
Retrieve the connection associated with this object in the given sheet.
 
Segment description base class to describe items which have 2 end points (track, wire,...
 
Handle access to a stack of flattened SCH_SHEET objects by way of a path for creating a flattened sch...
 
Represent a polyline containing arcs as well as line segments: A chain of connected line and/or arc s...
 
#define DEFAULT_SCH_ENTRY_SIZE
The default text size in mils. (can be changed in preference menu)
 
#define DEFAULT_WIRE_WIDTH_MILS
The default bus width in mils. (can be changed in preference menu)
 
static constexpr EDA_ANGLE ANGLE_90
 
static constexpr EDA_ANGLE ANGLE_270
 
a few functions useful in geometry calculations.
 
@ LAYER_NET_COLOR_HIGHLIGHT
 
@ LAYER_SELECTION_SHADOWS
 
constexpr void MIRROR(T &aPoint, const T &aMirrorRef)
Updates aPoint with the mirror of aPoint relative to the aMirrorRef.
 
bool ShapeHitTest(const SHAPE_LINE_CHAIN &aHitter, const SHAPE &aHittee, bool aHitteeContained)
Perform a shape-to-shape hit test.
 
@ PT_SIZE
Size expressed in distance units (mm/inch)
 
static struct SCH_BUS_ENTRY_DESC _SCH_BUS_ENTRY_DESC
 
LINE_STYLE
Dashed line types.
 
bool TestSegmentHit(const VECTOR2I &aRefPoint, const VECTOR2I &aStart, const VECTOR2I &aEnd, int aDist)
Test if aRefPoint is with aDistance on the line defined by aStart and aEnd.
 
void RotatePoint(int *pX, int *pY, const EDA_ANGLE &aAngle)
Calculate the new point of coord coord pX, pY, for a rotation center 0, 0.
 
bool IsPointOnSegment(const VECTOR2I &aSegStart, const VECTOR2I &aSegEnd, const VECTOR2I &aTestPoint)
Test if aTestPoint is on line defined by aSegStart and aSegEnd.
 
KICAD_T
The set of class identification values stored in EDA_ITEM::m_structType.
 
VECTOR2< int32_t > VECTOR2I