49 return wxT(
"PCB_TABLE" );
132 if( idx < (
int)
m_cells.size() )
175 bool aSkipConnectivity =
false )
override
177 wxFAIL_MSG( wxT(
"Use AddCell()/InsertCell() instead." ) );
182 wxFAIL_MSG( wxT(
"Use DeleteMarkedCells() instead." ) );
197 FLASHING aFlash = FLASHING::DEFAULT )
const override;
201 bool aIgnoreLineWidth =
false )
const override;
204 const std::vector<KICAD_T>& aScanTypes )
override;
216 bool HitTest(
const VECTOR2I& aPosition,
int aAccuracy = 0 )
const override;
218 bool HitTest(
const BOX2I& aRect,
bool aContained,
int aAccuracy = 0 )
const override;
235 void Show(
int nestLevel, std::ostream& os )
const override { ShowDummy( os ); }
ERROR_LOC
When approximating an arc or circle, should the error be placed on the outside or inside of the curve...
BITMAPS
A list of all bitmap identifiers.
Abstract interface for BOARD_ITEMs capable of storing other items inside.
A base class for any item which can be embedded within the BOARD container class, and therefore insta...
virtual PCB_LAYER_ID GetLayer() const
Return the primary layer this item is on.
The base class for create windows for drawing purpose.
A base class for most all the KiCad significant classes used in schematics and boards.
KICAD_T Type() const
Returns the type of object.
virtual void SetParent(EDA_ITEM *aParent)
EDA_ITEM_FLAGS GetFlags() const
A color representation with 4 components: red, green, blue, alpha.
void SetLayer(PCB_LAYER_ID aLayer) override
Set the layer this item is on.
STROKE_PARAMS m_separatorsStroke
static bool ClassOf(const EDA_ITEM *aItem)
void Remove(BOARD_ITEM *aItem, REMOVE_MODE aMode=REMOVE_MODE::NORMAL) override
Removes an item from the container.
const BOX2I GetBoundingBox() const override
Return the orthogonal bounding box of this object for display purposes.
std::vector< PCB_TABLECELL * > m_cells
void SetColWidth(int aCol, int aWidth)
bool HitTest(const VECTOR2I &aPosition, int aAccuracy=0) const override
Test if aPosition is inside or on the boundary of this item.
void Move(const VECTOR2I &aMoveVector) override
Move this object.
bool StrokeColumns() const
void SetBorderStyle(const LINE_STYLE aStyle)
void SetStrokeHeader(bool aDoStroke)
void SetSeparatorsColor(const COLOR4D &aColor)
STROKE_PARAMS m_borderStroke
wxString GetItemDescription(UNITS_PROVIDER *aUnitsProvider, bool aFull) const override
Return a user-visible description string of this item.
std::shared_ptr< SHAPE > GetEffectiveShape(PCB_LAYER_ID aLayer=UNDEFINED_LAYER, FLASHING aFlash=FLASHING::DEFAULT) const override
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes.
void Flip(const VECTOR2I &aCentre, FLIP_DIRECTION aFlipDirection) override
Flip this object, i.e.
bool StrokeExternal() const
int GetSeparatorsWidth() const
void SetStrokeExternal(bool aDoStroke)
bool StrokeHeader() const
PCB_TABLECELL * GetCell(int aRow, int aCol) const
std::vector< PCB_TABLECELL * > GetCells() const
int GetBorderWidth() const
COLOR4D GetBorderColor() const
bool operator==(const PCB_TABLE &aOther) const
INSPECT_RESULT Visit(INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &aScanTypes) override
May be re-implemented for each derived class in order to handle all the types given by its member dat...
void SetStrokeColumns(bool aDoStroke)
const STROKE_PARAMS & GetSeparatorsStroke() const
std::map< int, int > m_colWidths
virtual void swapData(BOARD_ITEM *aImage) override
void Normalize() override
Perform any normalization required after a user rotate and/or flip.
void AddCell(PCB_TABLECELL *aCell)
const STROKE_PARAMS & GetBorderStroke() const
BITMAPS GetMenuImage() const override
Return a pointer to an image to be used in menus.
void SetStrokeRows(bool aDoStroke)
void InsertCell(int aIdx, PCB_TABLECELL *aCell)
void Add(BOARD_ITEM *aItem, ADD_MODE aMode=ADD_MODE::INSERT, bool aSkipConnectivity=false) override
Adds an item to the container.
EDA_ITEM * Clone() const override
Create a duplicate of this item with linked list members set to NULL.
double Similarity(const BOARD_ITEM &aOther) const override
Return a measure of how likely the other object is to represent the same object.
void TransformShapeToPolygon(SHAPE_POLY_SET &aBuffer, PCB_LAYER_ID aLayer, int aClearance, int aMaxError, ERROR_LOC aErrorLoc, bool aIgnoreLineWidth=false) const override
Convert the item shape to a closed polygon.
LINE_STYLE GetBorderStyle() const
static int Compare(const PCB_TABLE *aTable, const PCB_TABLE *aOther)
void SetColCount(int aCount)
int GetColWidth(int aCol) const
VECTOR2I GetPosition() const override
void SetSeparatorsWidth(int aWidth)
COLOR4D GetSeparatorsColor() const
bool Matches(const EDA_SEARCH_DATA &aSearchData, void *aAuxData) const override
Compare the item against the search criteria in aSearchData.
virtual wxString GetClass() const override
Return the class name.
void RunOnChildren(const std::function< void(BOARD_ITEM *)> &aFunction) const override
Invoke a function on all children.
void Rotate(const VECTOR2I &aRotCentre, const EDA_ANGLE &aAngle) override
Rotate this object.
LINE_STYLE GetSeparatorsStyle() const
void SetBorderColor(const COLOR4D &aColor)
void SetSeparatorsStyle(const LINE_STYLE aStyle)
void SetSeparatorsStroke(const STROKE_PARAMS &aParams)
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 SetRowHeight(int aRow, int aHeight)
void SetPosition(const VECTOR2I &aPos) override
void SetBorderWidth(int aWidth)
void SetBorderStroke(const STROKE_PARAMS &aParams)
int GetRowHeight(int aRow) const
std::map< int, int > m_rowHeights
Represent a set of closed polygons.
Simple container to manage line stroke parameters.
void SetLineStyle(LINE_STYLE aLineStyle)
void SetWidth(int aWidth)
void SetColor(const KIGFX::COLOR4D &aColor)
LINE_STYLE GetLineStyle() const
KIGFX::COLOR4D GetColor() const
const INSPECTOR_FUNC & INSPECTOR
#define STRUCT_DELETED
flag indication structures to be erased
FLASHING
Enum used during connectivity building to ensure we do not query connectivity while building the data...
PCB_LAYER_ID
A quick note on layer IDs:
void delete_if(_Container &__c, _Function &&__f)
Deletes all values from __c for which __f returns true.
LINE_STYLE
Dashed line types.
@ PCB_TABLE_T
class PCB_TABLE, table of PCB_TABLECELLs
VECTOR2< int32_t > VECTOR2I