KiCad PCB EDA Suite
|
Contains methods for drawing schematic-specific items. More...
#include <sch_painter.h>
Public Member Functions | |
SCH_PAINTER (GAL *aGal) | |
virtual bool | Draw (const VIEW_ITEM *, int) override |
Takes an instance of VIEW_ITEM and passes it to a function that knows how to draw the item. | |
virtual SCH_RENDER_SETTINGS * | GetSettings () override |
Return a pointer to current settings that are going to be used when drawing items. | |
void | SetSchematic (SCHEMATIC *aSchematic) |
void | SetGAL (GAL *aGal) |
Changes Graphics Abstraction Layer used for drawing items for a new one. | |
Static Public Attributes | |
static std::vector< KICAD_T > | g_ScaledSelectionTypes |
Protected Attributes | |
GAL * | m_gal |
Instance of graphic abstraction layer that gives an interface to call commands used to draw (eg. | |
Private Member Functions | |
void | drawItemBoundingBox (const EDA_ITEM *aItem) |
void | draw (const EDA_ITEM *, int, bool aDimmed) |
void | draw (const SCH_PIN *aPin, int aLayer, bool aDimmed) |
void | draw (const LIB_SYMBOL *aSymbol, int, bool aDrawFields=true, int aUnit=0, int aBodyStyle=0, bool aDimmed=false) |
void | draw (const SCH_SYMBOL *aSymbol, int aLayer) |
void | draw (const SCH_SHAPE *aShape, int aLayer, bool aDimmed) |
void | draw (const SCH_JUNCTION *aJct, int aLayer) |
void | draw (const SCH_FIELD *aField, int aLayer, bool aDimmed) |
void | draw (const SCH_TEXTBOX *aTextBox, int aLayer, bool aDimmed) |
void | draw (const SCH_TEXT *aText, int aLayer, bool aDimmed) |
void | draw (const SCH_TABLE *aTable, int aLayer, bool aDimmed) |
void | draw (const SCH_LABEL *aLabel, int aLayer) |
void | draw (const SCH_DIRECTIVE_LABEL *aLabel, int aLayer) |
void | draw (const SCH_HIERLABEL *aLabel, int aLayer, bool aDimmed) |
void | draw (const SCH_GLOBALLABEL *aLabel, int aLayer) |
void | draw (const SCH_SHEET *aSheet, int aLayer) |
void | draw (const SCH_NO_CONNECT *aNC, int aLayer) |
void | draw (const SCH_MARKER *aMarker, int aLayer) |
void | draw (const SCH_BITMAP *aBitmap, int aLayer) |
void | draw (const SCH_LINE *aLine, int aLayer) |
void | draw (const SCH_BUS_ENTRY_BASE *aEntry, int aLayer) |
void | drawPinDanglingIndicator (const VECTOR2I &aPos, const COLOR4D &aColor, bool aDrawingShadows, bool aBrightened) |
void | drawDanglingIndicator (const VECTOR2I &aPos, const COLOR4D &aColor, int aWidth, bool aDangling, bool aDrawingShadows, bool aBrightened) |
void | drawAnchor (const VECTOR2I &aPos, bool aDrawingShadows) |
int | internalPinDecoSize (const SCH_PIN &aPin) |
int | externalPinDecoSize (const SCH_PIN &aPin) |
bool | nonCached (const EDA_ITEM *aItem) |
bool | isUnitAndConversionShown (const SCH_ITEM *aItem) const |
float | getShadowWidth (bool aForHighlight) const |
COLOR4D | getRenderColor (const SCH_ITEM *aItem, int aLayer, bool aDrawingShadows, bool aDimmed=false) const |
KIFONT::FONT * | getFont (const EDA_TEXT *aText) const |
float | getLineWidth (const SCH_ITEM *aItem, bool aDrawingShadows, bool aDrawingWireColorHighlights=false) const |
float | getTextThickness (const SCH_ITEM *aItem) const |
int | getOperatingPointTextSize () const |
void | triLine (const VECTOR2D &a, const VECTOR2D &b, const VECTOR2D &c) |
wxString | expandLibItemTextVars (const wxString &aSourceText, const SCH_SYMBOL *aSymbolContext) |
Private Attributes | |
SCH_RENDER_SETTINGS | m_schSettings |
SCHEMATIC * | m_schematic |
Contains methods for drawing schematic-specific items.
Definition at line 67 of file sch_painter.h.
KIGFX::SCH_PAINTER::SCH_PAINTER | ( | GAL * | aGal | ) |
Definition at line 136 of file sch_painter.cpp.
|
private |
Definition at line 154 of file sch_painter.cpp.
References BOX2< Vec >::Centre(), SCH_ITEM::Connection(), draw(), drawItemBoundingBox(), EDA_ITEM::GetBoundingBox(), KIGFX::RENDER_SETTINGS::GetDrawBoundingBoxes(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, LIB_SYMBOL_T, LIGHTRED, KIGFX::PAINTER::m_gal, m_schSettings, SCH_BITMAP_T, SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_MARKER_T, SCH_NO_CONNECT_T, SCH_PIN_T, SCH_RULE_AREA_T, SCH_SHAPE_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SCH_TABLE_T, SCH_TEXT_T, SCH_TEXTBOX_T, KIGFX::GAL::SetGlyphSize(), KIGFX::GAL::SetHorizontalJustify(), KIGFX::GAL::SetLineWidth(), KIGFX::GAL::SetStrokeColor(), KIGFX::GAL::SetVerticalJustify(), and EDA_ITEM::Type().
|
private |
Definition at line 705 of file sch_painter.cpp.
References LIB_SYMBOL::Flatten(), SCH_ITEM::GetBodyStyle(), LIB_SYMBOL::GetDrawItems(), SCH_ITEM::GetUnit(), LIB_SYMBOL::IsAlias(), SCH_FIELD_T, EDA_ITEM::Type(), and SCH_ITEM::ViewGetLayers().
|
private |
Definition at line 3264 of file sch_painter.cpp.
References color, REFERENCE_IMAGE::GetImage(), REFERENCE_IMAGE::GetImageScale(), SCH_BITMAP::GetPosition(), SCH_BITMAP::GetReferenceImage(), REFERENCE_IMAGE::GetSize(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), LAYER_DRAW_BITMAPS, LAYER_SELECTION_SHADOWS, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 3165 of file sch_painter.cpp.
References color, KIGFX::eeconfig(), ENDPOINT, SCH_BUS_ENTRY_BASE::GetEnd(), SCH_BUS_ENTRY_BASE::GetLineStyle(), SCH_BUS_ENTRY_BASE::GetPenWidth(), SCH_BUS_ENTRY_BASE::GetPosition(), SCH_BUS_ENTRY_BASE::GetStroke(), EESCHEMA_SETTINGS::SELECTION::highlight_netclass_colors, EDA_ITEM::IsBrightened(), SCH_BUS_ENTRY_BASE::IsDanglingEnd(), SCH_BUS_ENTRY_BASE::IsDanglingStart(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_BUS, LAYER_DANGLING, LAYER_NET_COLOR_HIGHLIGHT, LAYER_SELECTION_SHADOWS, LAYER_WIRE, EESCHEMA_SETTINGS::m_Selection, SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, EDA_ITEM::SetBrightened(), SCH_LINE::SetEndPoint(), EDA_ITEM::SetFlags(), SCH_LINE::SetLineColor(), SCH_LINE::SetLineStyle(), SCH_LINE::SetLineWidth(), EDA_ITEM::SetSelected(), SCH_LINE::SetStartPoint(), SCH_LINE::SetStroke(), STARTPOINT, TARGET_BUSENTRY_RADIUS, and EDA_ITEM::Type().
|
private |
Definition at line 2994 of file sch_painter.cpp.
References color, SCH_DIRECTIVE_LABEL::CreateGraphicShape(), DANGLING_SYMBOL_SIZE, KIGFX::eeconfig(), F_DOT, F_ROUND, SCH_LABEL_BASE::GetFields(), SCH_LABEL_BASE::GetShape(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), SCH_DIRECTIVE_LABEL::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_DANGLING, LAYER_NETCLASS_REFS, LAYER_SELECTION_SHADOWS, EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 2667 of file sch_painter.cpp.
References ANGLE_HORIZONTAL, ANGLE_VERTICAL, KIGFX::bitmapText(), BOX2< Vec >::Centre(), color, KIGFX::eeconfig(), EDA_TEXT::GetAttributes(), SCH_FIELD::GetBoundingBox(), BOX2< Vec >::GetEnd(), SCH_ITEM::GetFontMetrics(), SCH_ITEM::GetLayer(), EDA_ITEM::GetParent(), SCH_FIELD::GetParentPosition(), BOX2< Vec >::GetPosition(), SCH_FIELD::GetPosition(), SCH_FIELD::GetRenderCache(), SCH_GLOBALLABEL::GetSchematicTextOffset(), SCH_FIELD::GetShownText(), EDA_TEXT::GetTextAngle(), SCH_SYMBOL::GetTransform(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, BOX2< Vec >::Inflate(), IS_SHOWN_AS_BITMAP, EDA_ITEM::IsBrightened(), EDA_ITEM::IsForceVisible(), EDA_ANGLE::IsHorizontal(), SCH_FIELD::IsHypertext(), EDA_ITEM::IsMoving(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), EDA_TEXT::IsVisible(), KiROUND(), LAYER_HIDDEN, LAYER_HOVERED, LAYER_SCHEMATIC_ANCHOR, LAYER_SELECTION_SHADOWS, TEXT_ATTRIBUTES::m_Angle, EESCHEMA_SETTINGS::m_Appearance, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, TEXT_ATTRIBUTES::m_Valign, BOX2< Vec >::Offset(), SCH_ITEM::RenderAsBitmap(), SCH_GLOBAL_LABEL_T, SCH_SYMBOL_T, EESCHEMA_SETTINGS::APPEARANCE::show_hidden_fields, KIGFX::strokeText(), EDA_ITEM::Type(), KIGFX::VIEW::VIEW_MAX_LAYERS, SCH_FIELD::ViewGetLayers(), and TRANSFORM::y1.
|
private |
Definition at line 2827 of file sch_painter.cpp.
References color, SCH_GLOBALLABEL::CreateGraphicShape(), DANGLING_SYMBOL_SIZE, KIGFX::eeconfig(), SCH_LABEL_BASE::GetFields(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), SCH_LABEL_BASE::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_DANGLING, LAYER_GLOBLABEL, LAYER_SELECTION_SHADOWS, EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 2929 of file sch_painter.cpp.
References color, SCH_ITEM::Connection(), SCH_HIERLABEL::CreateGraphicShape(), DANGLING_SYMBOL_SIZE, KIGFX::eeconfig(), SCH_LABEL_BASE::GetFields(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), SCH_CONNECTION::IsBus(), SCH_ITEM::IsConnectivityDirty(), SCH_LABEL_BASE::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_BUS, LAYER_DANGLING, LAYER_HIERLABEL, LAYER_SCHEMATIC_BACKGROUND, LAYER_SELECTION_SHADOWS, EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 1630 of file sch_painter.cpp.
References color, KIGFX::eeconfig(), SCH_JUNCTION::GetEffectiveDiameter(), SCH_ITEM::GetLayer(), SCH_JUNCTION::GetPosition(), EESCHEMA_SETTINGS::SELECTION::highlight_netclass_colors, EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), LAYER_SELECTION_SHADOWS, and EESCHEMA_SETTINGS::m_Selection.
|
private |
Definition at line 2890 of file sch_painter.cpp.
References color, DANGLING_SYMBOL_SIZE, KIGFX::eeconfig(), SCH_LABEL_BASE::GetFields(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), SCH_LABEL_BASE::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_DANGLING, LAYER_HIERLABEL, LAYER_SELECTION_SHADOWS, EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 1669 of file sch_painter.cpp.
References color, KIGFX::eeconfig(), ENDPOINT, FIRST_TYPE, SCH_LINE::GetEffectiveLineStyle(), SCH_LINE::GetEndPoint(), KIFONT::FONT::GetFont(), SCH_ITEM::GetFontMetrics(), SCH_ITEM::GetLayer(), SCH_LINE::GetMidPoint(), SCH_LINE::GetOperatingPoint(), GetPenSizeForDemiBold(), SCH_LINE::GetStartPoint(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_V_ALIGN_BOTTOM, GR_TEXT_V_ALIGN_CENTER, EDA_ITEM::HasFlag(), EESCHEMA_SETTINGS::SELECTION::highlight_netclass_colors, EESCHEMA_SETTINGS::SELECTION::highlight_netclass_colors_alpha, KIGFX::COLOR4D::Invert(), EDA_ITEM::IsBrightened(), SCH_LINE::IsBus(), SCH_LINE::IsEndDangling(), EDA_ITEM::IsNew(), EDA_ITEM::IsSelected(), SCH_LINE::IsStartDangling(), SCH_LINE::IsWire(), KiROUND(), KIGFX::knockoutText(), LAYER_BUS, LAYER_DANGLING, LAYER_NET_COLOR_HIGHLIGHT, LAYER_OP_VOLTAGES, LAYER_SELECTION_SHADOWS, LAYER_WIRE, TEXT_ATTRIBUTES::m_Color, TEXT_ATTRIBUTES::m_Font, TEXT_ATTRIBUTES::m_Halign, EESCHEMA_SETTINGS::m_Selection, TEXT_ATTRIBUTES::m_Size, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, STARTPOINT, STROKE_PARAMS::Stroke(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 3311 of file sch_painter.cpp.
References color, SCH_MARKER::GetColorLayer(), SCH_MARKER::GetPosition(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), LAYER_SELECTION_SHADOWS, and MARKER_BASE::ShapeToPolygon().
|
private |
Definition at line 3142 of file sch_painter.cpp.
References delta, SCH_NO_CONNECT::GetPosition(), SCH_NO_CONNECT::GetSize(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), LAYER_NOCONNECT, and LAYER_SELECTION_SHADOWS.
|
private |
Definition at line 1189 of file sch_painter.cpp.
References KIGFX::PIN_TEXTS::TEXT_PLACEMENT::Angle, ANGLE_HORIZONTAL, ANGLE_VERTICAL, KIGFX::bitmapText(), KIGFX::boxText(), Clamp_Text_PenSize(), CLOCK, CLOCK_LOW, color, KIGFX::PIN_TEXTS::SLOT::colour, KIGFX::PIN_TEXTS::ComputeOffsets(), KIGFX::drawAltPinModesIcon(), KIGFX::eeconfig(), externalPinDecoSize(), FALLING_EDGE_CLOCK, SCH_PIN::GetAlternates(), SCH_PIN::GetElectricalTypeName(), KIFONT::FONT::GetFont(), SCH_ITEM::GetFontMetrics(), SCH_PIN::GetLength(), SCH_PIN::GetNameTextSize(), SCH_PIN::GetNumberTextSize(), SCH_PIN::GetOperatingPoint(), SCH_PIN::GetOrientation(), SCH_ITEM::GetParentSymbol(), GetPenSizeForDemiBold(), SYMBOL::GetPinNameOffset(), SCH_PIN::GetPinRoot(), SCH_PIN::GetPosition(), SCH_PIN::GetShape(), SCH_PIN::GetShownName(), SCH_PIN::GetShownNumber(), SYMBOL::GetShowPinNames(), SYMBOL::GetShowPinNumbers(), KIGFX::PIN_TEXTS::GetSlot(), KIGFX::TEXT_AND_ICON_LAYOUT::getTextLayout(), KIGFX::PIN_TEXTS::GetTextPlacement(), SCH_PIN::GetType(), GR_TEXT_H_ALIGN_LEFT, GR_TEXT_V_ALIGN_CENTER, KIGFX::PIN_TEXTS::TEXT_PLACEMENT::HAlign, EDA_ITEM::HasFlag(), KIGFX::TEXT_AND_ICON_LAYOUT::LOCATIONS::IconPos, KIGFX::PIN_TEXTS::TEXT_PLACEMENT::IconSide, INPUT_LOW, internalPinDecoSize(), INVERTED, INVERTED_CLOCK, IS_DANGLING, IS_SHOWN_AS_BITMAP, EDA_ITEM::IsBrightened(), SCH_PIN::IsGlobalPower(), KIFONT::FONT::IsOutline(), EDA_ITEM::IsSelected(), SCH_PIN::IsVisible(), KiROUND(), KIGFX::knockoutText(), LAYER_DANGLING, LAYER_HIDDEN, LAYER_OP_CURRENTS, LAYER_PIN, LAYER_PINNAM, LAYER_PINNUM, LAYER_PRIVATE_NOTES, LAYER_SELECTION_SHADOWS, LINE, TEXT_ATTRIBUTES::m_Angle, EESCHEMA_SETTINGS::m_Appearance, TEXT_ATTRIBUTES::m_Color, TEXT_ATTRIBUTES::m_Font, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_Size, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, EDA_IU_SCALE::MilsToIU(), EDA_IU_SCALE::mmToIU(), NONLOGIC, KIGFX::TEXT_AND_ICON_LAYOUT::LOCATIONS::NormalPos, OUTPUT_LOW, PIN_TEXT_MARGIN, KIGFX::PIN_TEXTS::TEXT_PLACEMENT::Pos, PT_NC, KIGFX::PIN_TEXTS::SLOT::role, schIUScale, KIGFX::PIN_TEXTS::SetColorOverride(), KIGFX::TEXT_AND_ICON_LAYOUT::LOCATIONS::ShadowPos, EESCHEMA_SETTINGS::APPEARANCE::show_hidden_pins, sign(), KIGFX::PIN_TEXTS::SLOT::size, KIGFX::PIN_TEXTS::SlotRendersAsBitmap(), KIGFX::strokeText(), TARGET_PIN_RADIUS, KIGFX::PIN_TEXTS::SLOT::text, KIGFX::PIN_TEXTS::SLOT::thickness, KIGFX::PIN_TEXTS::TEXT_PLACEMENT::VAlign, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 1818 of file sch_painter.cpp.
References ARC, SEG::B, BEZIER, CalcArcCenter(), CIRCLE, color, KIGFX::eeconfig(), FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, FIRST_TYPE, SCH_SHAPE::GetEffectiveLineStyle(), EDA_SHAPE::GetFillMode(), SHAPE_SEGMENT::GetSeg(), EDA_SHAPE::GetShape(), EDA_ITEM::IsBrightened(), EDA_SHAPE::IsFilled(), SCH_ITEM::IsPrivate(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_DEVICE, LAYER_DEVICE_BACKGROUND, LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_PRIVATE_NOTES, LAYER_RULE_AREAS, LAYER_SELECTION_SHADOWS, SCH_SHAPE::MakeEffectiveShapes(), NO_FILL, EDA_ANGLE::Normalize180(), POLY, RECTANGLE, STROKE_PARAMS::Stroke(), and UNIMPLEMENTED_FOR.
|
private |
Definition at line 3062 of file sch_painter.cpp.
References DEFAULT_LINE_WIDTH_MILS, KIGFX::eeconfig(), SCH_SHEET::GetBodyBoundingBox(), SCH_SHEET::GetBoundingBox(), SCH_SHEET::GetDNP(), BOX2< Vec >::GetEnd(), SCH_SHEET::GetExcludedFromSim(), SCH_SHEET::GetFields(), BOX2< Vec >::GetOrigin(), SCH_SHEET::GetPins(), SCH_SHEET::GetPosition(), SCH_SHEET::GetSize(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), BOX2< Vec >::Inflate(), KIGFX::isFieldsLayer(), KiROUND(), LAYER_DNP_MARKER, LAYER_EXCLUDED_FROM_SIM, LAYER_SELECTION_SHADOWS, LAYER_SHEET, LAYER_SHEET_BACKGROUND, EESCHEMA_SETTINGS::m_Appearance, EESCHEMA_SETTINGS::APPEARANCE::mark_sim_exclusions, EDA_IU_SCALE::MilsToIU(), schIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 2538 of file sch_painter.cpp.
References EDA_ITEM::ClearFlags(), DEFAULT_LINE_WIDTH_MILS, dummy, KIGFX::eeconfig(), SCH_SYMBOL::GetBodyAndPinsBoundingBox(), SCH_SYMBOL::GetBodyBoundingBox(), SCH_ITEM::GetBodyStyle(), SYMBOL::GetDNP(), LIB_SYMBOL::GetDrawItems(), BOX2< Vec >::GetEnd(), SYMBOL::GetExcludedFromSim(), SCH_SYMBOL::GetFields(), EDA_ITEM::GetFlags(), SCH_SYMBOL::GetLibSymbolRef(), SCH_PIN::GetOperatingPoint(), SCH_SYMBOL::GetOrientation(), BOX2< Vec >::GetOrigin(), SCH_SYMBOL::GetPin(), LIB_SYMBOL::GetPins(), SCH_SYMBOL::GetPosition(), SCH_PIN::GetShape(), SCH_PIN::GetShownName(), EDA_TEXT::GetText(), SCH_PIN::GetType(), SCH_ITEM::GetUnit(), SCH_SYMBOL::GetUnitSelection(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), EDA_TEXT::HasTextVars(), BOX2< Vec >::Inflate(), IS_DANGLING, EDA_ITEM::IsBrightened(), SCH_PIN::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_DNP_MARKER, LAYER_EXCLUDED_FROM_SIM, LAYER_SELECTION_SHADOWS, EESCHEMA_SETTINGS::m_Appearance, EESCHEMA_SETTINGS::APPEARANCE::mark_sim_exclusions, EDA_IU_SCALE::MilsToIU(), OrientAndMirrorSymbolItems(), SCH_TEXT_T, SCH_TEXTBOX_T, schIUScale, EDA_ITEM::SetFlags(), SCH_PIN::SetName(), SCH_PIN::SetOperatingPoint(), SCH_PIN::SetShape(), EDA_TEXT::SetText(), SCH_PIN::SetType(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 2392 of file sch_painter.cpp.
References color, DEFAULT, FIRST_TYPE, SCH_TABLE::GetBorderStroke(), SCH_TABLE::GetCell(), SCH_TABLE::GetCells(), SCH_TABLE::GetColCount(), SCH_TABLECELL::GetColSpan(), SCH_TABLE::GetEnd(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetEndX(), EDA_SHAPE::GetEndY(), SCH_TABLE::GetPosition(), SCH_TABLE::GetRowCount(), SCH_TABLECELL::GetRowSpan(), SCH_TABLE::GetSeparatorsStroke(), EDA_SHAPE::GetStartX(), EDA_SHAPE::GetStartY(), STROKE_PARAMS::GetWidth(), LAYER_NOTES, LAYER_SELECTION_SHADOWS, SOLID, STROKE_PARAMS::Stroke(), SCH_TABLE::StrokeColumns(), SCH_TABLE::StrokeExternal(), SCH_TABLE::StrokeHeader(), SCH_TABLE::StrokeRows(), KIGFX::COLOR4D::UNSPECIFIED, and VECTOR2< T >::x.
|
private |
Definition at line 2004 of file sch_painter.cpp.
References ANGLE_0, ANGLE_90, ANGLE_VERTICAL, KIGFX::bitmapText(), BOX2< Vec >::Centre(), color, SCH_ITEM::Connection(), KIGFX::eeconfig(), EDA_TEXT::GetAttributes(), BOX2< Vec >::GetBottom(), SCH_TEXT::GetBoundingBox(), EDA_TEXT::GetDrawPos(), EDA_TEXT::GetDrawRotation(), BOX2< Vec >::GetEnd(), SCH_ITEM::GetFontMetrics(), BOX2< Vec >::GetHeight(), SCH_ITEM::GetLayer(), BOX2< Vec >::GetLeft(), SCH_ITEM::GetParentSymbol(), BOX2< Vec >::GetPosition(), SCH_TEXT::GetPosition(), EDA_TEXT::GetRenderCache(), BOX2< Vec >::GetRight(), SCH_TEXT::GetSchematicTextOffset(), SCH_TEXT::GetShownText(), EDA_TEXT::GetTextBox(), EDA_TEXT::GetTextSize(), BOX2< Vec >::GetTop(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_INDETERMINATE, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, GR_TEXT_V_ALIGN_CENTER, BOX2< Vec >::Inflate(), IS_SHOWN_AS_BITMAP, EDA_ITEM::IsBrightened(), SCH_CONNECTION::IsBus(), SCH_ITEM::IsConnectivityDirty(), EDA_ITEM::IsForceVisible(), SCH_TEXT::IsHypertext(), KIFONT::FONT::IsOutline(), SCH_ITEM::IsPrivate(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), EDA_TEXT::IsVisible(), KiROUND(), LAYER_BUS, LAYER_DEVICE, LAYER_GLOBLABEL, LAYER_HIDDEN, LAYER_HIERLABEL, LAYER_HOVERED, LAYER_LOCLABEL, LAYER_NETCLASS_REFS, LAYER_NOTES, LAYER_SELECTION_SHADOWS, LAYER_SHEETLABEL, TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, TEXT_ATTRIBUTES::m_Valign, SCH_ITEM::RenderAsBitmap(), RotatePoint(), SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, SCH_SHEET_PIN_T, SCH_TEXT_T, KIGFX::strokeText(), EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 2246 of file sch_painter.cpp.
References KIGFX::COLOR4D::a, color, KIGFX::COLOR4D::Desaturate(), FIRST_TYPE, EDA_TEXT::GetAttributes(), STROKE_PARAMS::GetColor(), SCH_TABLECELL::GetColSpan(), SCH_TEXTBOX::GetDrawPos(), EDA_TEXT::GetDrawRotation(), SCH_SHAPE::GetEffectiveLineStyle(), EDA_SHAPE::GetEnd(), SCH_ITEM::GetFontMetrics(), KIGFX::VIEW_ITEM::GetForcedTransparency(), SCH_SHAPE::GetPosition(), EDA_TEXT::GetRenderCache(), SCH_TABLECELL::GetRowSpan(), SCH_TEXTBOX::GetShownText(), SCH_SHAPE::GetStroke(), EDA_ITEM::IsBrightened(), EDA_SHAPE::IsFilled(), SCH_TEXTBOX::IsHypertext(), KIFONT::FONT::IsOutline(), SCH_ITEM::IsPrivate(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_DEVICE, LAYER_DEVICE_BACKGROUND, LAYER_HOVERED, LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_PRIVATE_NOTES, LAYER_SCHEMATIC_BACKGROUND, LAYER_SELECTION_SHADOWS, TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, SCH_SHAPE::MakeEffectiveShapes(), KIGFX::COLOR4D::Mix(), SCH_TABLECELL_T, STROKE_PARAMS::Stroke(), KIGFX::strokeText(), EDA_ITEM::Type(), KIGFX::COLOR4D::UNSPECIFIED, and KIGFX::COLOR4D::WithAlpha().
|
overridevirtual |
Takes an instance of VIEW_ITEM and passes it to a function that knows how to draw the item.
aItem | is an item to be drawn. |
aLayer | tells which layer is currently rendered so that draw functions may know what to draw (eg. for pads there are separate layers for holes, because they have other dimensions then the pad itself. |
Implements KIGFX::PAINTER.
Definition at line 142 of file sch_painter.cpp.
References draw().
|
private |
Definition at line 1578 of file sch_painter.cpp.
References color, MATRIX3x3< T >::GetScale(), KiROUND(), LAYER_SCHEMATIC_ANCHOR, LAYER_SELECTION_SHADOWS, EDA_IU_SCALE::MilsToIU(), schIUScale, TEXT_ANCHOR_SIZE, and VECTOR2< T >::x.
|
private |
Definition at line 1604 of file sch_painter.cpp.
References KIGFX::COLOR4D::Brightened(), DANGLING_SYMBOL_SIZE, EDA_IU_SCALE::MilsToIU(), schIUScale, and UNSELECTED_END_SIZE.
|
private |
Definition at line 258 of file sch_painter.cpp.
References KIGFX::GAL::DrawRectangle(), EDA_ITEM::GetBoundingBox(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetOrigin(), EDA_ITEM::IsSelected(), KIGFX::PAINTER::m_gal, SCH_RENDER_SETTINGS::m_IsSymbolEditor, m_schSettings, EDA_IU_SCALE::MilsToIU(), SCH_SYMBOL_T, schIUScale, KIGFX::GAL::SetIsFill(), KIGFX::GAL::SetIsStroke(), KIGFX::GAL::SetLineWidth(), KIGFX::GAL::SetStrokeColor(), and EDA_ITEM::Type().
Referenced by draw().
|
private |
Definition at line 780 of file sch_painter.cpp.
References KIGFX::COLOR4D::Brightened(), and TARGET_PIN_RADIUS.
|
private |
Definition at line 2522 of file sch_painter.cpp.
References ExpandTextVars(), and SCH_SYMBOL::ResolveTextVar().
|
private |
Definition at line 770 of file sch_painter.cpp.
References SCH_PIN::GetNumberTextSize().
|
private |
Definition at line 308 of file sch_painter.cpp.
References KIGFX::RENDER_SETTINGS::GetDefaultFont(), EDA_TEXT::GetFont(), KIFONT::FONT::GetFont(), EDA_TEXT::IsBold(), EDA_TEXT::IsItalic(), and m_schSettings.
|
private |
Definition at line 476 of file sch_painter.cpp.
References DEFAULT_LINE_WIDTH_MILS, KIGFX::eeconfig(), SCH_ITEM::GetEffectivePenWidth(), EESCHEMA_SETTINGS::SELECTION::highlight_netclass_colors_thickness, EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), SCH_ITEM::IsType(), EESCHEMA_SETTINGS::m_Selection, EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 543 of file sch_painter.cpp.
References std::abs(), KiROUND(), EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 331 of file sch_painter.cpp.
References color, SCH_SHEET::GetBackgroundColor(), SCH_SHEET::GetBorderColor(), STROKE_PARAMS::GetColor(), EDA_SHAPE::GetFillColor(), EDA_SHAPE::GetFillMode(), KIGFX::RENDER_SETTINGS::GetLayerColor(), SCH_ITEM::GetParentSymbol(), SCH_SHAPE::GetStroke(), EDA_TEXT::GetTextColor(), SCH_ITEM::IsType(), LAYER_DEVICE, LAYER_DEVICE_BACKGROUND, LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_RULE_AREAS, LAYER_SHEET_BACKGROUND, SCH_RENDER_SETTINGS::m_OverrideItemColors, m_schSettings, SCH_BUS_WIRE_ENTRY_T, SCH_FIELD_T, SCH_JUNCTION_T, SCH_LABEL_LOCATE_ANY_T, SCH_LINE_T, SCH_RULE_AREA_T, SCH_SHAPE_T, SCH_SHEET_T, SCH_TABLECELL_T, SCH_TEXTBOX_T, EDA_ITEM::Type(), and KIGFX::COLOR4D::UNSPECIFIED.
|
inlineoverridevirtual |
Return a pointer to current settings that are going to be used when drawing items.
Implements KIGFX::PAINTER.
Definition at line 76 of file sch_painter.h.
References m_schSettings.
|
private |
Definition at line 318 of file sch_painter.cpp.
References KIGFX::eeconfig(), MATRIX3x3< T >::GetScale(), KIGFX::GAL::GetScreenWorldMatrix(), EESCHEMA_SETTINGS::SELECTION::highlight_thickness, KIGFX::PAINTER::m_gal, EESCHEMA_SETTINGS::m_Selection, EDA_IU_SCALE::MilsToIU(), schIUScale, EESCHEMA_SETTINGS::SELECTION::selection_thickness, and VECTOR2< T >::x.
|
private |
Definition at line 508 of file sch_painter.cpp.
References SCH_ITEM::GetClass(), SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, SCH_SHEET_PIN_T, SCH_TABLECELL_T, SCH_TEXT_T, SCH_TEXTBOX_T, EDA_ITEM::Type(), and UNIMPLEMENTED_FOR.
|
private |
Definition at line 759 of file sch_painter.cpp.
References SCH_PIN::GetNameTextSize(), and SCH_PIN::GetNumberTextSize().
|
private |
Definition at line 288 of file sch_painter.cpp.
References SCH_ITEM::GetBodyStyle(), SCH_ITEM::GetUnit(), m_schSettings, SCH_RENDER_SETTINGS::m_ShowBodyStyle, and SCH_RENDER_SETTINGS::m_ShowUnit.
|
private |
Definition at line 280 of file sch_painter.cpp.
References EDA_ITEM::IsSelected().
|
inlineinherited |
|
inline |
Definition at line 78 of file sch_painter.h.
References m_schematic.
|
private |
Definition at line 698 of file sch_painter.cpp.
|
static |
Definition at line 133 of file sch_painter.h.
Referenced by SCH_BASE_FRAME::RefreshZoomDependentItems().
|
protectedinherited |
Instance of graphic abstraction layer that gives an interface to call commands used to draw (eg.
DrawLine, DrawCircle, etc.)
Definition at line 102 of file painter.h.
Referenced by ZONE_PAINTER::draw(), draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::GERBVIEW_PAINTER::draw(), KIGFX::GERBVIEW_PAINTER::drawApertureMacro(), KIGFX::GERBVIEW_PAINTER::drawFlashedShape(), drawItemBoundingBox(), KIGFX::GERBVIEW_PAINTER::drawPolygon(), getShadowWidth(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), and KIGFX::PCB_PAINTER::strokeText().
|
private |
Definition at line 137 of file sch_painter.h.
Referenced by SetSchematic().
|
private |
Definition at line 136 of file sch_painter.h.
Referenced by draw(), drawItemBoundingBox(), getFont(), getRenderColor(), GetSettings(), and isUnitAndConversionShown().