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. More... | |
virtual SCH_RENDER_SETTINGS * | GetSettings () override |
Return a pointer to current settings that are going to be used when drawing items. More... | |
void | SetSchematic (SCHEMATIC *aSchematic) |
void | SetGAL (GAL *aGal) |
Changes Graphics Abstraction Layer used for drawing items for a new one. More... | |
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. More... | |
Private Member Functions | |
void | draw (const EDA_ITEM *, int, bool aDimmed) |
void | draw (const LIB_PIN *aPin, int aLayer, bool aDimmed) |
void | draw (const LIB_SHAPE *aCircle, int aLayer, bool aDimmed) |
void | draw (const LIB_SYMBOL *aSymbol, int, bool aDrawFields=true, int aUnit=0, int aConvert=0, bool aDimmed=false) |
void | draw (const LIB_FIELD *aField, int aLayer, bool aDimmed) |
void | draw (const LIB_TEXT *aText, int aLayer, bool aDimmed) |
void | draw (const LIB_TEXTBOX *aTextBox, int aLayer, bool aDimmed) |
void | draw (const SCH_SYMBOL *aSymbol, int aLayer) |
void | draw (const SCH_JUNCTION *aJct, int aLayer) |
void | draw (const SCH_FIELD *aField, int aLayer, bool aDimmed) |
void | draw (const SCH_SHAPE *aShape, int aLayer) |
void | draw (const SCH_TEXTBOX *aTextBox, int aLayer) |
void | draw (const SCH_TEXT *aText, int aLayer) |
void | draw (const SCH_LABEL *aText, int aLayer) |
void | draw (const SCH_DIRECTIVE_LABEL *aLabel, int aLayer) |
void | draw (const SCH_HIERLABEL *aLabel, int aLayer) |
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 | drawPinDanglingSymbol (const VECTOR2I &aPos, const COLOR4D &aColor, bool aDrawingShadows, bool aBrightened) |
void | drawDanglingSymbol (const VECTOR2I &aPos, const COLOR4D &aColor, int aWidth, bool aDangling, bool aDrawingShadows, bool aBrightened) |
int | internalPinDecoSize (const LIB_PIN &aPin) |
int | externalPinDecoSize (const LIB_PIN &aPin) |
bool | nonCached (const EDA_ITEM *aItem) |
bool | isUnitAndConversionShown (const LIB_ITEM *aItem) const |
float | getShadowWidth (bool aForHighlight) const |
COLOR4D | getRenderColor (const EDA_ITEM *aItem, int aLayer, bool aDrawingShadows, bool aDimmed=false) const |
KIFONT::FONT * | getFont (const EDA_TEXT *aText) const |
float | getLineWidth (const EDA_ITEM *aItem, bool aDrawingShadows) const |
float | getTextThickness (const EDA_ITEM *aItem) const |
bool | setDeviceColors (const LIB_ITEM *aItem, int aLayer, bool aDimmed) |
void | triLine (const VECTOR2D &a, const VECTOR2D &b, const VECTOR2D &c) |
void | strokeText (const wxString &aText, const VECTOR2D &aPosition, const TEXT_ATTRIBUTES &aAttributes) |
void | bitmapText (const wxString &aText, const VECTOR2D &aPosition, const TEXT_ATTRIBUTES &aAttributes) |
void | boxText (const wxString &aText, const VECTOR2D &aPosition, const TEXT_ATTRIBUTES &aAttrs) |
Private Attributes | |
SCH_RENDER_SETTINGS | m_schSettings |
SCHEMATIC * | m_schematic |
Contains methods for drawing schematic-specific items.
Definition at line 133 of file sch_painter.h.
KIGFX::SCH_PAINTER::SCH_PAINTER | ( | GAL * | aGal | ) |
Definition at line 184 of file sch_painter.cpp.
|
private |
Definition at line 605 of file sch_painter.cpp.
References KiROUND(), TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_Size, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 620 of file sch_painter.cpp.
References KIGFX::eeconfig(), BOX2< Vec >::GetBoundingBoxRotated(), BOX2< Vec >::GetEnd(), KIFONT::FONT::GetFont(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetOrigin(), BOX2< Vec >::GetWidth(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, GR_TEXT_V_ALIGN_BOTTOM, GR_TEXT_V_ALIGN_CENTER, GR_TEXT_V_ALIGN_TOP, BOX2< Vec >::Inflate(), TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Bold, TEXT_ATTRIBUTES::m_Font, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_Italic, TEXT_ATTRIBUTES::m_Size, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, KIGFX::mapCoords(), BOX2< Vec >::Normalize(), BOX2< Vec >::RevertYAxis(), BOX2< Vec >::SetX(), BOX2< Vec >::SetY(), KIFONT::FONT::StringBoundaryLimits(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 201 of file sch_painter.cpp.
References BOX2< Vec >::Centre(), SCH_ITEM::Connection(), draw(), KIGFX::GAL::DrawRectangle(), SCH_SYMBOL::GetBodyBoundingBox(), EDA_ITEM::GetBoundingBox(), KIGFX::RENDER_SETTINGS::GetDrawBoundingBoxes(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetOrigin(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, EDA_ITEM::IsSelected(), LIB_FIELD_T, LIB_PIN_T, LIB_SHAPE_T, LIB_SYMBOL_T, LIB_TEXT_T, LIB_TEXTBOX_T, LIGHTRED, KIGFX::PAINTER::m_gal, m_schSettings, EDA_IU_SCALE::MilsToIU(), 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_SHAPE_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SCH_TEXT_T, SCH_TEXTBOX_T, schIUScale, KIGFX::GAL::SetGlyphSize(), KIGFX::GAL::SetHorizontalJustify(), KIGFX::GAL::SetIsFill(), KIGFX::GAL::SetIsStroke(), KIGFX::GAL::SetLineWidth(), KIGFX::GAL::SetStrokeColor(), KIGFX::GAL::SetVerticalJustify(), and EDA_ITEM::Type().
|
private |
Definition at line 931 of file sch_painter.cpp.
References BOX2< Vec >::Centre(), color, KIGFX::eeconfig(), EDA_TEXT::GetAttributes(), LIB_FIELD::GetBoundingBox(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetPosition(), LIB_FIELD::GetShownText(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, BOX2< Vec >::Inflate(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsForceVisible(), EDA_ITEM::IsMoving(), EDA_ITEM::IsSelected(), EDA_TEXT::IsVisible(), KiROUND(), LAYER_HIDDEN, LAYER_SCHEMATIC_ANCHOR, LAYER_SELECTION_SHADOWS, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, UnescapeString(), KIGFX::VIEW::VIEW_MAX_LAYERS, and LIB_FIELD::ViewGetLayers().
|
private |
Definition at line 1228 of file sch_painter.cpp.
References ANGLE_HORIZONTAL, ANGLE_VERTICAL, BITMAP_FONT_SIZE_THRESHOLD, Clamp_Text_PenSize(), CLOCK, CLOCK_LOW, color, KIGFX::eeconfig(), externalPinDecoSize(), FALLING_EDGE_CLOCK, LIB_PIN::GetElectricalTypeName(), KIFONT::FONT::GetFont(), LIB_PIN::GetLength(), LIB_PIN::GetNameTextSize(), LIB_PIN::GetNumberTextSize(), LIB_PIN::GetOrientation(), LIB_ITEM::GetParent(), LIB_SYMBOL::GetPinNameOffset(), LIB_PIN::GetPosition(), LIB_PIN::GetShape(), LIB_PIN::GetShownName(), LIB_PIN::GetShownNumber(), LIB_PIN::GetType(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, GR_TEXT_V_ALIGN_BOTTOM, GR_TEXT_V_ALIGN_CENTER, GR_TEXT_V_ALIGN_TOP, EDA_ITEM::HasFlag(), INPUT_LOW, internalPinDecoSize(), INVERTED, INVERTED_CLOCK, IS_DANGLING, IS_SHOWN_AS_BITMAP, EDA_ITEM::IsBrightened(), KIFONT::FONT::IsOutline(), LIB_PIN::IsPowerConnection(), EDA_ITEM::IsSelected(), LIB_PIN::IsVisible(), KiROUND(), LAYER_DANGLING, LAYER_HIDDEN, LAYER_PIN, LAYER_PINNAM, LAYER_PINNUM, LAYER_PRIVATE_NOTES, LAYER_SELECTION_SHADOWS, LIB_SYMBOL_T, LINE, TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Bold, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_Italic, TEXT_ATTRIBUTES::m_Size, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, KIGFX::mapCoords(), EDA_IU_SCALE::MilsToIU(), EDA_IU_SCALE::mmToIU(), NONLOGIC, OUTPUT_LOW, OUTSIDE, PIN_DOWN, PIN_LEFT, PIN_RIGHT, PIN_TEXT_MARGIN, PIN_UP, PT_NC, schIUScale, LIB_SYMBOL::ShowPinNames(), LIB_SYMBOL::ShowPinNumbers(), TARGET_PIN_RADIUS, text, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 783 of file sch_painter.cpp.
References ARC, BEZIER, CIRCLE, color, SHAPE_LINE_CHAIN::CPoints(), KIGFX::eeconfig(), FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, FIRST_TYPE, EDA_SHAPE::GetFillMode(), STROKE_PARAMS::GetPlotStyle(), EDA_SHAPE::GetShape(), LIB_SHAPE::GetStroke(), EDA_SHAPE::IsFilled(), LIB_ITEM::IsPrivate(), KiROUND(), LAYER_DEVICE, LAYER_DEVICE_BACKGROUND, LAYER_NOTES_BACKGROUND, LAYER_PRIVATE_NOTES, LAYER_SELECTION_SHADOWS, LIB_SHAPE::MakeEffectiveShapes(), TRANSFORM::MapAngles(), KIGFX::mapCoords(), POLY, RECT, STROKE_PARAMS::Stroke(), and UNIMPLEMENTED_FOR.
|
private |
Definition at line 669 of file sch_painter.cpp.
References LIB_SYMBOL::Flatten(), LIB_SYMBOL::GetDrawItems(), LIB_SYMBOL::IsAlias(), and LIB_FIELD_T.
|
private |
Definition at line 1006 of file sch_painter.cpp.
References ANGLE_VERTICAL, BOX2< Vec >::Centre(), color, KIGFX::eeconfig(), EDA_TEXT::GetAttributes(), BOX2< Vec >::GetBottom(), LIB_TEXT::GetBoundingBox(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetLeft(), BOX2< Vec >::GetPosition(), BOX2< Vec >::GetRight(), EDA_TEXT::GetShownText(), BOX2< Vec >::GetTop(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, GR_TEXT_V_ALIGN_CENTER, BOX2< Vec >::Inflate(), EDA_ITEM::IsBrightened(), LIB_ITEM::IsPrivate(), EDA_ITEM::IsSelected(), EDA_TEXT::IsVisible(), KiROUND(), LAYER_HIDDEN, LAYER_SELECTION_SHADOWS, TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Valign, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 1081 of file sch_painter.cpp.
References color, KIGFX::COLOR4D::Desaturate(), FIRST_TYPE, EDA_TEXT::GetAttributes(), STROKE_PARAMS::GetColor(), LIB_TEXTBOX::GetDrawPos(), EDA_TEXT::GetDrawRotation(), EDA_SHAPE::GetEnd(), STROKE_PARAMS::GetPlotStyle(), LIB_SHAPE::GetPosition(), LIB_TEXTBOX::GetShownText(), LIB_SHAPE::GetStroke(), EDA_ITEM::IsBrightened(), EDA_SHAPE::IsFilled(), LIB_ITEM::IsPrivate(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_DEVICE, LAYER_DEVICE_BACKGROUND, LAYER_NOTES_BACKGROUND, LAYER_PRIVATE_NOTES, LAYER_SCHEMATIC_BACKGROUND, LAYER_SELECTION_SHADOWS, TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_StrokeWidth, LIB_SHAPE::MakeEffectiveShapes(), KIGFX::mapCoords(), KIGFX::COLOR4D::Mix(), and STROKE_PARAMS::Stroke().
|
private |
Definition at line 2803 of file sch_painter.cpp.
References color, SCH_BITMAP::GetImage(), SCH_BITMAP::GetImageScale(), SCH_BITMAP::GetPosition(), SCH_BITMAP::GetSize(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), LAYER_DRAW_BITMAPS, LAYER_SELECTION_SHADOWS, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 2744 of file sch_painter.cpp.
References color, ENDPOINT, SCH_BUS_ENTRY_BASE::GetEnd(), SCH_BUS_ENTRY_BASE::GetLineStyle(), SCH_ITEM::GetPenWidth(), SCH_BUS_ENTRY_BASE::GetPosition(), SCH_BUS_ENTRY_BASE::GetStroke(), EDA_ITEM::IsBrightened(), SCH_BUS_ENTRY_BASE::IsDanglingEnd(), SCH_BUS_ENTRY_BASE::IsDanglingStart(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_BUS, LAYER_DANGLING, LAYER_SELECTION_SHADOWS, LAYER_WIRE, 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 2583 of file sch_painter.cpp.
References color, SCH_DIRECTIVE_LABEL::CreateGraphicShape(), DANGLING_SYMBOL_SIZE, KIGFX::eeconfig(), EuclideanNorm(), F_DOT, F_ROUND, SCH_LABEL_BASE::GetFields(), SCH_LABEL_BASE::GetShape(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), SCH_LABEL_BASE::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_DANGLING, LAYER_NETCLASS_REFS, LAYER_SELECTION_SHADOWS, EDA_IU_SCALE::MilsToIU(), and schIUScale.
|
private |
Definition at line 2338 of file sch_painter.cpp.
References ANGLE_HORIZONTAL, ANGLE_VERTICAL, BOX2< Vec >::Centre(), color, KIGFX::eeconfig(), EDA_TEXT::GetAttributes(), SCH_FIELD::GetBoundingBox(), BOX2< Vec >::GetEnd(), SCH_ITEM::GetLayer(), EDA_ITEM::GetParent(), SCH_FIELD::GetParentPosition(), BOX2< Vec >::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, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, TEXT_ATTRIBUTES::m_Valign, KIGFX::mapCoords(), BOX2< Vec >::Offset(), SCH_ITEM::RenderAsBitmap(), BOX2< Vec >::RevertYAxis(), SCH_GLOBAL_LABEL_T, SCH_SYMBOL_T, EDA_ITEM::Type(), and TRANSFORM::y1.
|
private |
Definition at line 2472 of file sch_painter.cpp.
References color, SCH_GLOBALLABEL::CreateGraphicShape(), KIGFX::eeconfig(), SCH_LABEL_BASE::GetFields(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_DANGLING, LAYER_GLOBLABEL, LAYER_SCHEMATIC_BACKGROUND, and LAYER_SELECTION_SHADOWS.
|
private |
Definition at line 2535 of file sch_painter.cpp.
References color, SCH_ITEM::Connection(), SCH_HIERLABEL::CreateGraphicShape(), KIGFX::eeconfig(), SCH_LABEL_BASE::GetFields(), EDA_TEXT::GetTextPos(), EDA_ITEM::IsBrightened(), SCH_CONNECTION::IsBus(), SCH_ITEM::IsConnectivityDirty(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_BUS, LAYER_HIERLABEL, LAYER_SCHEMATIC_BACKGROUND, and LAYER_SELECTION_SHADOWS.
|
private |
Definition at line 1682 of file sch_painter.cpp.
References color, SCH_JUNCTION::GetEffectiveDiameter(), SCH_ITEM::GetLayer(), SCH_JUNCTION::GetPosition(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), and LAYER_SELECTION_SHADOWS.
|
private |
Definition at line 2515 of file sch_painter.cpp.
References KIGFX::eeconfig(), SCH_LABEL_BASE::GetFields(), EDA_ITEM::IsBrightened(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), and LAYER_SELECTION_SHADOWS.
|
private |
Definition at line 1705 of file sch_painter.cpp.
References color, ENDPOINT, FIRST_TYPE, SCH_LINE::GetEffectiveLineStyle(), SCH_LINE::GetEndPoint(), SCH_ITEM::GetLayer(), SCH_LINE::GetStartPoint(), EDA_ITEM::HasFlag(), EDA_ITEM::IsBrightened(), SCH_LINE::IsEndDangling(), EDA_ITEM::IsNew(), EDA_ITEM::IsSelected(), SCH_LINE::IsStartDangling(), SCH_LINE::IsWire(), KiROUND(), LAYER_DANGLING, LAYER_SELECTION_SHADOWS, STARTPOINT, and STROKE_PARAMS::Stroke().
|
private |
Definition at line 2848 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 2724 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 1776 of file sch_painter.cpp.
References ARC, BEZIER, EDA_SHAPE::CalcArcAngles(), CIRCLE, color, KIGFX::eeconfig(), FIRST_TYPE, SCH_SHAPE::GetCenter(), SCH_SHAPE::GetEffectiveLineStyle(), EDA_SHAPE::GetRadius(), EDA_SHAPE::GetShape(), EDA_ITEM::IsBrightened(), EDA_SHAPE::IsFilled(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_SELECTION_SHADOWS, EDA_SHAPE::MakeEffectiveShapes(), POLY, RECT, STROKE_PARAMS::Stroke(), and UNIMPLEMENTED_FOR.
|
private |
Definition at line 2645 of file sch_painter.cpp.
References BOTTOM, KIGFX::eeconfig(), SCH_SHEET::GetFields(), SCH_SHEET::GetPenWidth(), SCH_SHEET::GetPins(), SCH_SHEET::GetPosition(), SCH_SHEET::GetSize(), EDA_ITEM::IsBrightened(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_HIERLABEL, LAYER_SELECTION_SHADOWS, LAYER_SHEET, LAYER_SHEET_BACKGROUND, LEFT, RIGHT, TOP, VECTOR2< T >::x, and VECTOR2< T >::y.
|
private |
Definition at line 2227 of file sch_painter.cpp.
References EDA_ITEM::ClearFlags(), convert, DEFAULT_LINE_WIDTH_MILS, dummy, KIGFX::eeconfig(), KIGFX::expandLibItemTextVars(), SCH_SYMBOL::GetBodyAndPinsBoundingBox(), COLOR_SETTINGS::GetColor(), SCH_SYMBOL::GetConvert(), SCH_SYMBOL::GetDNP(), LIB_SYMBOL::GetDrawItems(), BOX2< Vec >::GetEnd(), SCH_SYMBOL::GetFields(), EDA_ITEM::GetFlags(), BOX2< Vec >::GetHeight(), SCH_SYMBOL::GetLibSymbolRef(), 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_SYMBOL::GetUnit(), SCH_SYMBOL::GetUnitSelection(), BOX2< Vec >::GetWidth(), EDA_TEXT::HasTextVars(), IS_DANGLING, EDA_ITEM::IsBrightened(), SCH_PIN::IsDangling(), KIGFX::isFieldsLayer(), EDA_ITEM::IsSelected(), LAYER_ERC_ERR, LAYER_SELECTION_SHADOWS, LIB_TEXT_T, LIB_TEXTBOX_T, KIGFX::mapCoords(), EDA_IU_SCALE::MilsToIU(), KIGFX::orientSymbol(), Pgm(), schIUScale, EDA_ITEM::SetFlags(), LIB_PIN::SetName(), LIB_PIN::SetShape(), EDA_TEXT::SetText(), and LIB_PIN::SetType().
|
private |
Definition at line 1911 of file sch_painter.cpp.
References color, SCH_ITEM::Connection(), DANGLING_SYMBOL_SIZE, KIGFX::eeconfig(), EDA_TEXT::GetAttributes(), SCH_TEXT::GetBoundingBox(), EDA_TEXT::GetDrawPos(), EDA_TEXT::GetDrawRotation(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetPosition(), EDA_TEXT::GetRenderCache(), SCH_TEXT::GetSchematicTextOffset(), SCH_TEXT::GetShownText(), EDA_TEXT::GetTextBox(), EDA_TEXT::GetTextPos(), EDA_TEXT::GetTextSize(), BOX2< Vec >::Inflate(), IS_SHOWN_AS_BITMAP, EDA_ITEM::IsBrightened(), SCH_CONNECTION::IsBus(), SCH_ITEM::IsConnectivityDirty(), SCH_ITEM::IsDangling(), EDA_ITEM::IsForceVisible(), SCH_TEXT::IsHypertext(), KIFONT::FONT::IsOutline(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), EDA_TEXT::IsVisible(), KiROUND(), LAYER_BUS, LAYER_DANGLING, 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_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, KIGFX::mapCoords(), EDA_IU_SCALE::MilsToIU(), SCH_ITEM::RenderAsBitmap(), BOX2< Vec >::RevertYAxis(), RotatePoint(), SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, SCH_SHEET_PIN_T, SCH_TEXT_T, schIUScale, EDA_ITEM::Type(), and VECTOR2< T >::y.
|
private |
Definition at line 2044 of file sch_painter.cpp.
References color, FIRST_TYPE, EDA_TEXT::GetAttributes(), STROKE_PARAMS::GetColor(), SCH_TEXTBOX::GetDrawPos(), EDA_TEXT::GetDrawRotation(), SCH_SHAPE::GetEffectiveLineStyle(), EDA_SHAPE::GetEnd(), EDA_TEXT::GetFont(), KIFONT::FONT::GetFont(), SCH_SHAPE::GetPosition(), EDA_TEXT::GetRenderCache(), SCH_TEXTBOX::GetShownText(), SCH_SHAPE::GetStroke(), EDA_TEXT::IsBold(), EDA_ITEM::IsBrightened(), EDA_SHAPE::IsFilled(), SCH_TEXTBOX::IsHypertext(), EDA_TEXT::IsItalic(), KIFONT::FONT::IsOutline(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), KiROUND(), LAYER_HOVERED, LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_SELECTION_SHADOWS, TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, EDA_SHAPE::MakeEffectiveShapes(), and STROKE_PARAMS::Stroke().
|
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 189 of file sch_painter.cpp.
References draw().
|
private |
Definition at line 1659 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 1212 of file sch_painter.cpp.
References KIGFX::COLOR4D::Brightened(), and TARGET_PIN_RADIUS.
|
private |
Definition at line 1202 of file sch_painter.cpp.
References LIB_PIN::GetNumberTextSize().
|
private |
Definition at line 347 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 497 of file sch_painter.cpp.
References DEFAULT_LINE_WIDTH_MILS, EDA_ITEM::GetClass(), SCH_ITEM::GetPenWidth(), EDA_ITEM::IsBrightened(), EDA_ITEM::IsSelected(), EDA_ITEM::IsType(), EDA_IU_SCALE::MilsToIU(), schIUScale, and UNIMPLEMENTED_FOR.
|
private |
Definition at line 372 of file sch_painter.cpp.
References color, SCH_SHEET::GetBackgroundColor(), SCH_SHEET::GetBorderColor(), STROKE_PARAMS::GetColor(), EDA_SHAPE::GetFillColor(), KIGFX::RENDER_SETTINGS::GetLayerColor(), LIB_SHAPE::GetStroke(), SCH_SHAPE::GetStroke(), EDA_TEXT::GetTextColor(), EDA_ITEM::IsType(), LAYER_DEVICE_BACKGROUND, LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_SHEET_BACKGROUND, LIB_SHAPE_T, LIB_TEXTBOX_T, KIGFX::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_SHAPE_T, SCH_SHEET_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 142 of file sch_painter.h.
References m_schSettings.
|
private |
Definition at line 359 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 522 of file sch_painter.cpp.
References EDA_ITEM::GetClass(), LIB_FIELD_T, LIB_TEXT_T, LIB_TEXTBOX_T, SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, SCH_SHEET_PIN_T, SCH_TEXT_T, SCH_TEXTBOX_T, EDA_ITEM::Type(), and UNIMPLEMENTED_FOR.
|
private |
Definition at line 1191 of file sch_painter.cpp.
References LIB_PIN::GetNameTextSize(), and LIB_PIN::GetNumberTextSize().
|
private |
Definition at line 327 of file sch_painter.cpp.
References LIB_ITEM::GetConvert(), LIB_ITEM::GetUnit(), m_schSettings, KIGFX::SCH_RENDER_SETTINGS::m_ShowConvert, and KIGFX::SCH_RENDER_SETTINGS::m_ShowUnit.
|
private |
Definition at line 319 of file sch_painter.cpp.
References EDA_ITEM::IsSelected().
|
private |
Definition at line 703 of file sch_painter.cpp.
References KIGFX::COLOR4D::Desaturate(), FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, EDA_SHAPE::GetFillColor(), EDA_SHAPE::GetFillMode(), LIB_ITEM::GetPenWidth(), EDA_ITEM::IsBrightened(), EDA_SHAPE::IsFilled(), EDA_ITEM::IsSelected(), LAYER_DEVICE, LAYER_DEVICE_BACKGROUND, LAYER_NOTES, LAYER_NOTES_BACKGROUND, LAYER_PRIVATE_NOTES, LAYER_SCHEMATIC_BACKGROUND, LAYER_SELECTION_SHADOWS, and KIGFX::COLOR4D::Mix().
|
inlineinherited |
Changes Graphics Abstraction Layer used for drawing items for a new one.
aGal | is the new GAL instance. |
Definition at line 75 of file painter.h.
References KIGFX::PAINTER::m_gal.
|
inline |
Definition at line 144 of file sch_painter.h.
References m_schematic.
|
private |
Definition at line 587 of file sch_painter.cpp.
References KIFONT::FONT::Draw(), KIGFX::eeconfig(), KIFONT::FONT::GetFont(), KIFONT::FONT::IsOutline(), KIFONT::FONT::IsStroke(), TEXT_ATTRIBUTES::m_Bold, TEXT_ATTRIBUTES::m_Font, and TEXT_ATTRIBUTES::m_Italic.
|
static |
Definition at line 202 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 101 of file painter.h.
Referenced by draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::GERBVIEW_PAINTER::draw(), KIGFX::GERBVIEW_PAINTER::drawApertureMacro(), KIGFX::GERBVIEW_PAINTER::drawFlashedShape(), KIGFX::GERBVIEW_PAINTER::drawPolygon(), getShadowWidth(), KIGFX::PAINTER::SetGAL(), and KIGFX::PCB_PAINTER::strokeText().
|
private |
Definition at line 206 of file sch_painter.h.
Referenced by SetSchematic().
|
private |
Definition at line 205 of file sch_painter.h.
Referenced by draw(), getFont(), getRenderColor(), GetSettings(), and isUnitAndConversionShown().