|
KiCad PCB EDA Suite
|
A mix-in class (via multiple inheritance) that handles texts such as labels, parts, components, or footprints. More...
#include <eda_text.h>
Classes | |
| struct | BBOX_CACHE_ENTRY |
Public Member Functions | |
| EDA_TEXT (const EDA_IU_SCALE &aIuScale, const wxString &aText=wxEmptyString) | |
| EDA_TEXT (const EDA_TEXT &aText) | |
| virtual | ~EDA_TEXT () |
| EDA_TEXT & | operator= (const EDA_TEXT &aItem) |
| void | Serialize (google::protobuf::Any &aContainer) const override |
| Serializes this object to the given Any message. | |
| bool | Deserialize (const google::protobuf::Any &aContainer) override |
| Deserializes the given protobuf message into this object. | |
| void | Serialize (google::protobuf::Any &aContainer, const EDA_IU_SCALE &aScale) const |
| bool | Deserialize (const google::protobuf::Any &aContainer, const EDA_IU_SCALE &aScale) |
| virtual const wxString & | GetText () const |
| Return the string associated with the text object. | |
| virtual wxString | GetShownText (bool aAllowExtraText, int aDepth=0) const |
| Return the string actually shown after processing of the base text. | |
| bool | HasTextVars () const |
| Indicates the ShownText has text var references which need to be processed. | |
| const std::vector< TEXT_VAR_REF_KEY > & | GetTextVarReferences () const |
Return the set of ${...} references extracted from the source text. | |
| virtual void | SetText (const wxString &aText) |
| wxString | EvaluateText (const wxString &aText) const |
| virtual void | SetTextThickness (int aWidth) |
| The TextThickness is that set by the user. | |
| virtual int | GetTextThickness () const |
| int | GetTextThicknessProperty () const |
| void | SetAutoThickness (bool aAuto) |
| bool | GetAutoThickness () const |
| int | GetEffectiveTextPenWidth (int aDefaultPenWidth=0) const |
| The EffectiveTextPenWidth uses the text thickness if > 1 or aDefaultPenWidth. | |
| virtual void | SetTextAngle (const EDA_ANGLE &aAngle) |
| virtual EDA_ANGLE | GetTextAngle () const |
| void | SetTextAngleDegrees (double aOrientation) |
| double | GetTextAngleDegrees () const |
| void | SetItalic (bool aItalic) |
| Set the text to be italic - this will also update the font if needed. | |
| void | SetItalicFlag (bool aItalic) |
| Set only the italic flag, without changing the font. | |
| bool | IsItalic () const |
| void | SetBold (bool aBold) |
| Set the text to be bold - this will also update the font if needed. | |
| void | SetBoldFlag (bool aBold) |
| Set only the bold flag, without changing the font. | |
| bool | IsBold () const |
| virtual void | SetVisible (bool aVisible) |
| virtual bool | IsVisible () const |
| void | SetMirrored (bool isMirrored) |
| bool | IsMirrored () const |
| void | SetMultilineAllowed (bool aAllow) |
| bool | IsMultilineAllowed () const |
| void | SetHorizJustify (GR_TEXT_H_ALIGN_T aType) |
| GR_TEXT_H_ALIGN_T | GetHorizJustify () const |
| void | SetVertJustify (GR_TEXT_V_ALIGN_T aType) |
| GR_TEXT_V_ALIGN_T | GetVertJustify () const |
| void | SetKeepUpright (bool aKeepUpright) |
| bool | IsKeepUpright () const |
| void | FlipHJustify () |
| void | SetAttributes (const EDA_TEXT &aSrc, bool aSetPosition=true) |
| Set the text attributes from another instance. | |
| void | SwapAttributes (EDA_TEXT &aTradingPartner) |
| Swap the text attributes of the two involved instances. | |
| void | SwapText (EDA_TEXT &aTradingPartner) |
| void | CopyText (const EDA_TEXT &aSrc) |
| void | SetAttributes (const TEXT_ATTRIBUTES &aTextAttrs) |
| const TEXT_ATTRIBUTES & | GetAttributes () const |
| bool | Replace (const EDA_SEARCH_DATA &aSearchData) |
| Helper function used in search and replace dialog. | |
| bool | IsDefaultFormatting () const |
| void | SetFont (KIFONT::FONT *aFont) |
| KIFONT::FONT * | GetFont () const |
| void | SetUnresolvedFontName (const wxString &aFontName) |
| bool | ResolveFont (const std::vector< wxString > *aEmbeddedFonts) |
| wxString | GetFontName () const |
| void | SetFontProp (const wxString &aFontName) |
| wxString | GetFontProp () const |
| void | SetLineSpacing (double aLineSpacing) |
| double | GetLineSpacing () const |
| virtual void | SetTextSize (VECTOR2I aNewSize, bool aEnforceMinTextSize=true) |
| virtual VECTOR2I | GetTextSize () const |
| virtual void | SetTextWidth (int aWidth) |
| virtual int | GetTextWidth () const |
| virtual void | SetTextHeight (int aHeight) |
| virtual int | GetTextHeight () const |
| void | SetTextColor (const COLOR4D &aColor) |
| COLOR4D | GetTextColor () const |
| virtual void | SetTextPos (const VECTOR2I &aPoint) |
| virtual VECTOR2I | GetTextPos () const |
| virtual void | SetTextX (int aX) |
| virtual void | SetTextY (int aY) |
| void | SetActiveUrl (const wxString &aUrl) const |
| virtual void | Offset (const VECTOR2I &aOffset) |
| void | Empty () |
| void | Print (const RENDER_SETTINGS *aSettings, const VECTOR2I &aOffset, const COLOR4D &aColor) |
| Print this text object to the device context aDC. | |
| std::shared_ptr< SHAPE_COMPOUND > | GetEffectiveTextShape (bool aTriangulate=true, const BOX2I &aBBox=BOX2I(), const EDA_ANGLE &aAngle=ANGLE_0) const |
| build a list of segments (SHAPE_SEGMENT) to describe a text shape. | |
| virtual bool | TextHitTest (const VECTOR2I &aPoint, int aAccuracy=0) const |
| Test if aPoint is within the bounds of this object. | |
| virtual bool | TextHitTest (const BOX2I &aRect, bool aContains, int aAccuracy=0) const |
| Test if object bounding box is contained within or intersects aRect. | |
| BOX2I | GetTextBox (const RENDER_SETTINGS *aSettings, int aLine=-1) const |
| Useful in multiline texts to calculate the full text or a line area (for zones filling, locate functions....) | |
| int | GetInterline (const RENDER_SETTINGS *aSettings) const |
| Return the distance between two lines of text. | |
| wxString | GetTextStyleName () const |
| void | GetLinePositions (const RENDER_SETTINGS *aSettings, std::vector< VECTOR2I > &aPositions, int aLineCount) const |
| Populate aPositions with the position of each line of a multiline text, according to the vertical justification and the rotation of the whole text. | |
| double | Levenshtein (const EDA_TEXT &aOther) const |
| Return the levenstein distance between two texts. | |
| double | Similarity (const EDA_TEXT &aOther) const |
| virtual void | Format (OUTPUTFORMATTER *aFormatter, int aControlBits) const |
| Output the object to aFormatter in s-expression form. | |
| virtual EDA_ANGLE | GetDrawRotation () const |
| virtual VECTOR2I | GetDrawPos () const |
| virtual KIFONT::FONT * | GetDrawFont (const RENDER_SETTINGS *aSettings) const |
| virtual void | ClearRenderCache () |
| virtual void | ClearBoundingBoxCache () |
| std::vector< std::unique_ptr< KIFONT::GLYPH > > * | GetRenderCache (const KIFONT::FONT *aFont, const wxString &forResolvedText, const VECTOR2I &aOffset={ 0, 0 }) const |
| void | SetupRenderCache (const wxString &aResolvedText, const KIFONT::FONT *aFont, const EDA_ANGLE &aAngle, const VECTOR2I &aOffset) |
| void | AddRenderCacheGlyph (const SHAPE_POLY_SET &aPoly) |
| int | Compare (const EDA_TEXT *aOther) const |
| bool | operator== (const EDA_TEXT &aRhs) const |
| bool | operator< (const EDA_TEXT &aRhs) const |
| bool | operator> (const EDA_TEXT &aRhs) const |
| virtual bool | HasHyperlink () const |
| wxString | GetHyperlink () const |
| void | SetHyperlink (wxString aLink) |
| void | RemoveHyperlink () |
Static Public Member Functions | |
| static GR_TEXT_H_ALIGN_T | MapHorizJustify (int aHorizJustify) |
| static GR_TEXT_V_ALIGN_T | MapVertJustify (int aVertJustify) |
| static bool | ValidateHyperlink (const wxString &aURL) |
| Check if aURL is a valid hyperlink. | |
| static bool | IsGotoPageHref (const wxString &aHref, wxString *aDestination=nullptr) |
| Check if aHref is a valid internal hyperlink. | |
| static wxString | GotoPageHref (const wxString &aDestination) |
| Generate a href to a page in the current schematic. | |
Protected Member Functions | |
| virtual const KIFONT::METRICS & | getFontMetrics () const |
| virtual void | cacheShownText () |
| void | printOneLineOfText (const RENDER_SETTINGS *aSettings, const VECTOR2I &aOffset, const COLOR4D &aColor, const wxString &aText, const VECTOR2I &aPos) |
| Print each line of this EDA_TEXT. | |
| bool | containsURL () const |
Protected Attributes | |
| wxString | m_hyperlink |
| A hyperlink URL. | |
| wxString | m_activeUrl |
Private Attributes | |
| wxString | m_text |
| wxString | m_shown_text |
| bool | m_shown_text_has_text_var_refs = false |
| std::vector< TEXT_VAR_REF_KEY > | m_text_var_refs |
| std::reference_wrapper< const EDA_IU_SCALE > | m_IuScale |
| std::unique_ptr< EDA_TEXT_RENDER_CACHE_DATA > | m_render_cache |
| std::map< int, BBOX_CACHE_ENTRY > | m_bbox_cache |
| std::mutex | m_bbox_cacheMutex |
| TEXT_ATTRIBUTES | m_attributes |
| wxString | m_unresolvedFontName |
| VECTOR2I | m_pos |
| bool | m_visible |
A mix-in class (via multiple inheritance) that handles texts such as labels, parts, components, or footprints.
Because it's a mix-in class, care is used to provide function names (accessors) that to not collide with function names likely to be seen in the combined derived classes.
Definition at line 88 of file eda_text.h.
| EDA_TEXT::EDA_TEXT | ( | const EDA_IU_SCALE & | aIuScale, |
| const wxString & | aText = wxEmptyString ) |
Definition at line 98 of file eda_text.cpp.
References cacheShownText(), DEFAULT_SIZE_TEXT, m_IuScale, m_text, m_visible, EDA_UNIT_UTILS::Mils2IU(), and SetTextSize().
Referenced by Compare(), CopyText(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), EDA_TEXT(), Levenshtein(), operator<(), operator=(), operator==(), operator>(), PCB_TEXT::PCB_TEXT(), PCB_TEXT::PCB_TEXT(), PCB_TEXT::PCB_TEXT(), PCB_TEXTBOX::PCB_TEXTBOX(), SCH_FIELD::SCH_FIELD(), SCH_FIELD::SCH_FIELD(), SCH_TEXT::SCH_TEXT(), SCH_TEXT::SCH_TEXT(), SCH_TEXTBOX::SCH_TEXTBOX(), SCH_TEXTBOX::SCH_TEXTBOX(), SetAttributes(), Similarity(), SwapAttributes(), and SwapText().
| EDA_TEXT::EDA_TEXT | ( | const EDA_TEXT & | aText | ) |
Definition at line 110 of file eda_text.cpp.
References EDA_TEXT(), m_attributes, m_bbox_cache, m_bbox_cacheMutex, m_IuScale, m_pos, m_render_cache, m_shown_text, m_shown_text_has_text_var_refs, m_text, m_text_var_refs, m_unresolvedFontName, and m_visible.
|
virtual |
Definition at line 133 of file eda_text.cpp.
| void EDA_TEXT::AddRenderCacheGlyph | ( | const SHAPE_POLY_SET & | aPoly | ) |
Definition at line 757 of file eda_text.cpp.
References KIFONT::OUTLINE_GLYPH::CacheTriangulation(), and m_render_cache.
|
protectedvirtual |
Reimplemented in SCH_LABEL_BASE.
Definition at line 624 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), ExtractTextVarReferences(), m_shown_text, m_shown_text_has_text_var_refs, m_text, m_text_var_refs, and UnescapeString().
Referenced by SCH_LABEL_BASE::cacheShownText(), CopyText(), EDA_TEXT(), Empty(), Replace(), SetText(), and SwapText().
|
virtual |
Definition at line 695 of file eda_text.cpp.
References m_bbox_cache, and m_bbox_cacheMutex.
Referenced by BOOST_AUTO_TEST_CASE(), cacheShownText(), SCH_FIELD::ClearCaches(), Offset(), PCB_DIMENSION_BASE::OnFootprintTransformed(), PCB_TEXT::OnFootprintTransformed(), PCB_TEXTBOX::OnFootprintTransformed(), Replace(), ResolveFont(), SetAttributes(), SetBoldFlag(), SetFont(), SetHorizJustify(), SetItalicFlag(), SetKeepUpright(), SetLineSpacing(), SetMirrored(), SetMultilineAllowed(), SetTextAngle(), SetTextHeight(), SetTextSize(), SetTextThickness(), SetTextWidth(), SetVertJustify(), SwapAttributes(), and DIALOG_TEXT_PROPERTIES::TransferDataFromWindow().
|
virtual |
Reimplemented in PCB_DIMENSION_BASE, and SCH_FIELD.
Definition at line 689 of file eda_text.cpp.
References m_render_cache.
Referenced by cacheShownText(), PCB_DIMENSION_BASE::ClearRenderCache(), SCH_FIELD::ClearRenderCache(), PCB_TABLE::Normalize(), SCH_TABLE::Normalize(), PCB_TEXT::Offset(), PCB_TEXT::OnFootprintTransformed(), PCB_TEXTBOX::OnFootprintTransformed(), Replace(), SetAttributes(), SetBoldFlag(), SetFont(), SetHorizJustify(), SetItalicFlag(), SetKeepUpright(), SetLineSpacing(), SetMirrored(), SetMultilineAllowed(), SetTextAngle(), SetTextHeight(), SetTextSize(), SetTextThickness(), SetTextWidth(), SetVertJustify(), SetVisible(), SwapAttributes(), and DIALOG_TEXT_PROPERTIES::TransferDataFromWindow().
| int EDA_TEXT::Compare | ( | const EDA_TEXT * | aOther | ) | const |
Definition at line 1234 of file eda_text.cpp.
References EDA_TEXT(), GetFontName(), m_attributes, m_pos, m_text, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by operator<(), operator==(), and operator>().
|
protected |
Definition at line 1021 of file eda_text.cpp.
References GetShownText(), MARKUP::MARKUP_PARSER::Parse(), recursiveDescent(), and TO_UTF8.
Referenced by SCH_TEXT::HasHypertext(), and SCH_TEXTBOX::HasHypertext().
| void EDA_TEXT::CopyText | ( | const EDA_TEXT & | aSrc | ) |
Definition at line 272 of file eda_text.cpp.
References cacheShownText(), EDA_TEXT(), and m_text.
|
overridevirtual |
Deserializes the given protobuf message into this object.
| aContainer | is an Any which should have a concrete type matching this object |
Reimplemented from SERIALIZABLE.
Reimplemented in PCB_DIM_ALIGNED, PCB_DIM_CENTER, PCB_DIM_LEADER, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIMENSION_BASE, PCB_FIELD, PCB_TEXT, PCB_TEXTBOX, SCH_DIRECTIVE_LABEL, SCH_FIELD, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LABEL, SCH_SHEET_PIN, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 208 of file eda_text.cpp.
References Deserialize(), and pcbIUScale.
Referenced by Deserialize(), PCB_DIMENSION_BASE::Deserialize(), PCB_TEXT::Deserialize(), SCH_FIELD::Deserialize(), SCH_SHEET_PIN::Deserialize(), and SCH_TEXT::Deserialize().
| bool EDA_TEXT::Deserialize | ( | const google::protobuf::Any & | aContainer, |
| const EDA_IU_SCALE & | aScale ) |
Definition at line 214 of file eda_text.cpp.
References DEGREES_T, FromProtoEnum(), GetAttributes(), KIFONT::FONT::GetFont(), TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Bold, TEXT_ATTRIBUTES::m_Color, TEXT_ATTRIBUTES::m_Font, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_Italic, TEXT_ATTRIBUTES::m_KeepUpright, TEXT_ATTRIBUTES::m_LineSpacing, TEXT_ATTRIBUTES::m_Mirrored, TEXT_ATTRIBUTES::m_Multiline, TEXT_ATTRIBUTES::m_Size, TEXT_ATTRIBUTES::m_StrokeWidth, TEXT_ATTRIBUTES::m_Underlined, TEXT_ATTRIBUTES::m_Valign, SetAttributes(), SetHyperlink(), SetText(), SetTextPos(), text, kiapi::common::UnpackColor(), kiapi::common::UnpackDistance(), kiapi::common::UnpackVector2(), and COLOR4D::UNSPECIFIED.
| void EDA_TEXT::Empty | ( | ) |
Definition at line 617 of file eda_text.cpp.
References cacheShownText(), and m_text.
Referenced by SCH_IO_KICAD_LEGACY_LIB_CACHE::LoadPart().
| wxString EDA_TEXT::EvaluateText | ( | const wxString & | aText | ) | const |
Definition at line 656 of file eda_text.cpp.
References EXPRESSION_EVALUATOR::Evaluate().
|
inline |
Definition at line 229 of file eda_text.h.
References GetHorizJustify(), GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, and SetHorizJustify().
Referenced by AdjustTextForSymbolOrientation(), SCH_TEXT::MirrorHorizontally(), SCH_TEXT::MirrorSpinStyle(), SCH_TEXT::MirrorVertically(), SCH_TEXT::Rotate90(), and SimulateRenderTransform().
|
virtual |
Output the object to aFormatter in s-expression form.
| aFormatter | The OUTPUTFORMATTER object to write to. |
| aControlBits | The control bit definition for object specific formatting. |
| IO_ERROR | on write error. |
Definition at line 1092 of file eda_text.cpp.
References CTL_OMIT_COLOR, CTL_OMIT_HYPERLINK, KICAD_FORMAT::FormatBool(), FormatDouble2Str(), EDA_UNIT_UTILS::FormatInternalUnits(), GetAutoThickness(), GetFont(), GetHorizJustify(), GetHyperlink(), GetLineSpacing(), GetTextColor(), GetTextHeight(), GetTextThickness(), GetTextWidth(), GetVertJustify(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_V_ALIGN_CENTER, GR_TEXT_V_ALIGN_TOP, HasHyperlink(), IsBold(), IsItalic(), IsMirrored(), KiROUND(), m_IuScale, OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), and COLOR4D::UNSPECIFIED.
Referenced by SCH_IO_KICAD_SEXPR::saveField(), and SCH_IO_KICAD_SEXPR_LIB_CACHE::saveField().
|
inline |
Definition at line 252 of file eda_text.h.
References m_attributes.
Referenced by BOARD_ADAPTER::addText(), PCB_IO_IPC2581::addText(), MULTICHANNEL_TOOL::copyRuleAreaContents(), Deserialize(), PCB_TEXTBOX::Deserialize(), SCH_TEXTBOX::Deserialize(), KIGFX::DS_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), GetEffectiveTextShape(), PCB_TEXT::GetKnockoutCache(), GetRenderCache(), FEATURES_MANAGER::InitFeatureList(), SIM_MODEL::MigrateSimModel(), std::hash< EDA_TEXT >::operator()(), PCB_FIELD::PCB_FIELD(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), SCH_TEXT::Plot(), SCH_TEXTBOX::Plot(), BRDITEMS_PLOTTER::PlotText(), CLIPBOARD_IO::SaveSelection(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), PCB_TEXT::TransformTextToPolySet(), and PCB_TEXTBOX::TransformTextToPolySet().
|
inline |
Definition at line 160 of file eda_text.h.
References GetTextThickness().
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), PCB_IO_KICAD_SEXPR::format(), GetTextThicknessProperty(), IsDefaultFormatting(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), and SetAutoThickness().
|
virtual |
Reimplemented in SCH_FIELD, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 667 of file eda_text.cpp.
References KIGFX::RENDER_SETTINGS::GetDefaultFont(), GetFont(), KIFONT::FONT::GetFont(), IsBold(), and IsItalic().
Referenced by PCB_IO_IPC2581::addText(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), GetEffectiveTextShape(), KIGFX::SCH_PAINTER::getFont(), GetInterline(), PCB_TABLECELL::GetShownText(), PCB_TEXTBOX::GetShownText(), GetTextBox(), FEATURES_MANAGER::InitFeatureList(), BRDITEMS_PLOTTER::PlotText(), printOneLineOfText(), PCB_TEXT::TransformTextToPolySet(), and PCB_TEXTBOX::TransformTextToPolySet().
|
inlinevirtual |
Reimplemented in PCB_TEXTBOX, and SCH_TEXTBOX.
Definition at line 401 of file eda_text.h.
References GetTextPos().
Referenced by BOARD_ADAPTER::addText(), PCB_TEXT::buildBoundingHull(), KIGFX::SCH_PAINTER::draw(), GetEffectiveTextShape(), PCB_TEXT::GetKnockoutCache(), GetLinePositions(), GetRenderCache(), GetTextBox(), SCH_TEXT::Plot(), Print(), TextHitTest(), and PCB_TEXT::TextHitTest().
|
inlinevirtual |
Reimplemented in PCB_TEXT, and SCH_FIELD.
Definition at line 400 of file eda_text.h.
References GetTextAngle().
Referenced by BOARD_ADAPTER::addText(), PCB_IO_IPC2581::addText(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), PCB_TABLE::DrawBorders(), PCB_IO_KICAD_SEXPR::formatRenderCache(), PCB_TEXTBOX::GetBotRight(), PCB_TEXTBOX::GetCorners(), PCB_TEXTBOX::GetDrawPos(), PCB_TEXTBOX::getDrawRotation(), PCB_TABLE::GetEffectiveShape(), GetEffectiveTextShape(), GetLinePositions(), PCB_TEXTBOX::GetMinSize(), SCH_TEXT::GetOffsetToMatchSCH_FIELD(), GetRenderCache(), PCB_TABLECELL::GetShownText(), PCB_TEXTBOX::GetShownText(), PCB_TEXTBOX::GetTopLeft(), FEATURES_MANAGER::InitFeatureList(), BRDITEMS_PLOTTER::PlotText(), printOneLineOfText(), PCB_TEXTBOX::SetBottom(), PCB_TEXTBOX::SetLeft(), PCB_TEXTBOX::SetRight(), PCB_TEXTBOX::SetTop(), TextHitTest(), and TextHitTest().
| int EDA_TEXT::GetEffectiveTextPenWidth | ( | int | aDefaultPenWidth = 0 | ) | const |
The EffectiveTextPenWidth uses the text thickness if > 1 or aDefaultPenWidth.
Definition at line 461 of file eda_text.cpp.
References ClampTextPenSize(), GetPenSizeForBold(), GetPenSizeForNormal(), GetTextSize(), GetTextThickness(), GetTextWidth(), and IsBold().
Referenced by BOARD_ADAPTER::addText(), PCB_IO_IPC2581::addText(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), KIGFX::DS_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), SCH_HIERLABEL::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), SCH_LABEL_BASE::GetBodyBoundingBox(), GetEffectiveTextShape(), PCB_TEXT::getKnockoutMargin(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_DIRECTIVE_LABEL::GetPenWidth(), SCH_FIELD::GetPenWidth(), SCH_TEXT::GetPenWidth(), PCB_TABLECELL::GetShownText(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), GetTextBox(), GetTextThicknessProperty(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), FEATURES_MANAGER::InitFeatureList(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), SCH_TEXT::Plot(), SCH_TEXTBOX::Plot(), BRDITEMS_PLOTTER::PlotText(), printOneLineOfText(), SetAutoThickness(), PCB_TEXT::TextHitTest(), PCB_TEXT::TransformTextToPolySet(), PCB_TEXTBOX::TransformTextToPolySet(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_RADIAL::updateGeometry(), PCB_DIM_ALIGNED::updateText(), and PCB_DIM_ORTHOGONAL::updateText().
| std::shared_ptr< SHAPE_COMPOUND > EDA_TEXT::GetEffectiveTextShape | ( | bool | aTriangulate = true, |
| const BOX2I & | aBBox = BOX2I(), | ||
| const EDA_ANGLE & | aAngle = ANGLE_0 ) const |
build a list of segments (SHAPE_SEGMENT) to describe a text shape.
| aTriangulate | true to build also the triangulation of each shape |
| aUseTextRotation | true to use the actual text draw rotation. false to build a list of shape for a not rotated text ("native" shapes). |
Definition at line 1154 of file eda_text.cpp.
References SHAPE_SIMPLE::Append(), KIFONT::FONT::Draw(), KIGFX::GAL::DrawGlyphs(), GetAttributes(), BOX2< Vec >::GetCenter(), GetDrawFont(), GetDrawPos(), GetDrawRotation(), GetEffectiveTextPenWidth(), getFontMetrics(), GetRenderCache(), GetShownText(), GetTextSize(), BOX2< Vec >::GetWidth(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, KIFONT::FONT::IsOutline(), TEXT_ATTRIBUTES::m_Angle, TEXT_ATTRIBUTES::m_Halign, TEXT_ATTRIBUTES::m_Size, and TEXT_ATTRIBUTES::m_Valign.
Referenced by PCB_DIMENSION_BASE::GetEffectiveShape(), PCB_TEXT::GetEffectiveShape(), PCB_TEXTBOX::GetEffectiveShape(), SCH_SELECTION_TOOL::GuessSelectionCandidates(), and PCB_SELECTION_TOOL::hitTestDistance().
|
inline |
Definition at line 268 of file eda_text.h.
References m_attributes.
Referenced by BOARD_ADAPTER::addText(), SCH_EDIT_TOOL::ChangeTextType(), KIGFX::DS_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), Format(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::formatRenderCache(), GetDrawFont(), SCH_FIELD::GetDrawFont(), SCH_TEXT::GetDrawFont(), SCH_TEXTBOX::GetDrawFont(), GetFontName(), GetFontProp(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_FIELD::GetMsgPanelInfo(), SCH_LABEL_BASE::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), FIELDS_GRID_TABLE::GetValue(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), ALTIUM_PCB::HelperSetTextboxAlignmentAndPos(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), SetBold(), and SetItalic().
|
protectedvirtual |
Reimplemented in DS_DRAW_ITEM_TEXT, PCB_TEXT, PCB_TEXTBOX, SCH_FIELD, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 683 of file eda_text.cpp.
References KIFONT::METRICS::Default().
Referenced by GetEffectiveTextShape(), GetInterline(), GetRenderCache(), GetTextBox(), and printOneLineOfText().
| wxString EDA_TEXT::GetFontName | ( | ) | const |
Definition at line 1045 of file eda_text.cpp.
References GetFont(), and KIFONT::FONT::GetName().
Referenced by Compare(), and IsDefaultFormatting().
| wxString EDA_TEXT::GetFontProp | ( | ) | const |
Definition at line 1054 of file eda_text.cpp.
References _, GetFont(), IsEeschemaType(), and KICAD_FONT_NAME.
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC().
|
inline |
Definition at line 221 of file eda_text.h.
References m_attributes.
Referenced by AdjustFieldForSymbolOrientation(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_EDIT_TOOL::ChangeTextType(), SCH_TEXTBOX::compare(), SCH_DRAWING_TOOLS::createNewText(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), KIGFX::PCB_PAINTER::draw(), SCH_DRAWING_TOOLS::DrawShape(), EDA_TEXT_DESC::EDA_TEXT_DESC(), AUTOPLACER::fieldHPlacement(), FlipHJustify(), Format(), PCB_TEXTBOX::GetDrawPos(), SCH_TEXTBOX::GetDrawPos(), SCH_FIELD::GetEffectiveHorizJustify(), SCH_FIELD::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), SCH_LABEL_BASE::GetSpinStyle(), GetTextBox(), hash_fp_item(), IsDefaultFormatting(), SCH_FIELD::IsHorizJustifyFlipped(), AUTOPLACER::justifyField(), PCB_TEXT::KeepUpright(), SCH_IO_EAGLE::loadFieldAttributes(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), SIM_MODEL::MigrateSimModel(), PCB_TEXT::Mirror(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), SCH_TEXT::MirrorHorizontally(), SCH_TEXTBOX::MirrorHorizontally(), SCH_TEXT::MirrorVertically(), SCH_TEXTBOX::MirrorVertically(), SCH_TEXT::NormalizeJustification(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_FIELD::Plot(), positioningChanged(), positioningChanged(), printOneLineOfText(), processTextItem(), SCH_FIELD::Rotate(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), SCH_EDIT_TOOL::Swap(), and swapFieldPositionsWithMatching().
|
inline |
Definition at line 424 of file eda_text.h.
References m_hyperlink.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), SCH_TEXT::Plot(), SCH_TEXTBOX::Plot(), CLIPBOARD_IO::SaveSelection(), and Serialize().
| int EDA_TEXT::GetInterline | ( | const RENDER_SETTINGS * | aSettings | ) | const |
Return the distance between two lines of text.
Calculates the distance (pitch) between two lines of text. This distance includes the interline distance plus room for characters like j, {, and [. It also used for single line text, to calculate the text bounding box.
Definition at line 767 of file eda_text.cpp.
References GetDrawFont(), getFontMetrics(), GetInterline(), GetTextHeight(), and KiROUND().
Referenced by CADSTAR_ARCHIVE_PARSER::FixTextPositionNoAlignment(), GetInterline(), GetLinePositions(), and SCH_TEXT::Plot().
| void EDA_TEXT::GetLinePositions | ( | const RENDER_SETTINGS * | aSettings, |
| std::vector< VECTOR2I > & | aPositions, | ||
| int | aLineCount ) const |
Populate aPositions with the position of each line of a multiline text, according to the vertical justification and the rotation of the whole text.
| aPositions | is the list to populate by the VECTOR2I positions. |
| aLineCount | is the number of lines (not recalculated here for efficiency reasons. |
Definition at line 943 of file eda_text.cpp.
References GetDrawPos(), GetDrawRotation(), GetInterline(), GetVertJustify(), GR_TEXT_V_ALIGN_BOTTOM, GR_TEXT_V_ALIGN_CENTER, GR_TEXT_V_ALIGN_INDETERMINATE, GR_TEXT_V_ALIGN_TOP, RotatePoint(), and VECTOR2< T >::y.
Referenced by FEATURES_MANAGER::InitFeatureList(), SCH_TEXT::Plot(), SCH_TEXTBOX::Plot(), BRDITEMS_PLOTTER::PlotText(), and Print().
|
inline |
Definition at line 279 of file eda_text.h.
References m_attributes.
Referenced by Format(), FOOTPRINT::cmp_drawings::operator()(), Serialize(), PCB_TEXTBOX::Serialize(), and SCH_TEXTBOX::Serialize().
| std::vector< std::unique_ptr< KIFONT::GLYPH > > * EDA_TEXT::GetRenderCache | ( | const KIFONT::FONT * | aFont, |
| const wxString & | forResolvedText, | ||
| const VECTOR2I & | aOffset = { 0, 0 } ) const |
Definition at line 703 of file eda_text.cpp.
References GetAttributes(), GetDrawPos(), GetDrawRotation(), getFontMetrics(), KIFONT::OUTLINE_FONT::GetLinesAsGlyphs(), GetTextSize(), IsMirrored(), KIFONT::FONT::IsOutline(), TEXT_ATTRIBUTES::m_Angle, m_render_cache, and TEXT_ATTRIBUTES::m_Size.
Referenced by BOARD_ADAPTER::addText(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), PCB_IO_KICAD_SEXPR::formatRenderCache(), GetEffectiveTextShape(), BRDITEMS_PLOTTER::PlotText(), PCB_TEXT::TransformTextToPolySet(), and PCB_TEXTBOX::TransformTextToPolySet().
|
inlinevirtual |
Return the string actually shown after processing of the base text.
| aAllowExtraText | is true to allow adding more text than the initial expanded text, for intance a title, a prefix for texts in display functions. False to disable any added text (for instance when writing the shown text in netlists). |
| aDepth | is used to prevent infinite recursions and loops when expanding text variables. |
Reimplemented in PCB_FIELD, PCB_TABLECELL, PCB_TEXT, PCB_TEXTBOX, SCH_FIELD, SCH_LABEL_BASE, SCH_TABLECELL, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 121 of file eda_text.h.
References m_shown_text.
Referenced by BOARD_ADAPTER::addText(), PCB_IO_IPC2581::addText(), SCH_LABEL_BASE::cacheShownText(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), containsURL(), KIGFX::DS_PAINTER::draw(), PCB_IO_KICAD_SEXPR::formatRenderCache(), PCB_IO_IPC2581::generateLayerSetNet(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), GetEffectiveTextShape(), DS_DRAW_ITEM_TEXT::GetItemDescription(), PCB_TABLECELL::GetShownText(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), SCH_LABEL_BASE::GetShownText(), SCH_TABLECELL::GetShownText(), SCH_TEXT::GetShownText(), SCH_TEXTBOX::GetShownText(), GetTextBox(), SCH_FIELD::getUnescapedText(), FEATURES_MANAGER::InitFeatureList(), BRDITEMS_PLOTTER::PlotText(), Print(), and SCH_LABEL_BASE::SCH_LABEL_BASE().
|
inlinevirtual |
Return the string associated with the text object.
Reimplemented in SCH_FIELD.
Definition at line 110 of file eda_text.h.
References m_text.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), SCH_EDIT_FRAME::AutoRotateItem(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), SCH_EDIT_TOOL::ChangeTextType(), SCH_SHEET::CleanupSheet(), SCH_TEXT::compare(), SCH_TEXTBOX::compare(), SCH_BUS_WIRE_ENTRY::ConnectionPropagatesTo(), MULTICHANNEL_TOOL::copyRuleAreaContents(), SCH_IO_ALTIUM::CreateAliases(), SCH_DRAWING_TOOLS::createNewSheetPinFromLabel(), KIGFX::SCH_PAINTER::draw(), EDA_TEXT_DESC::EDA_TEXT_DESC(), CADSTAR_ARCHIVE_PARSER::FixTextPositionNoAlignment(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::format(), FormatProbeItem(), PCB_IO_IPC2581::generateComponents(), getFieldFunc(), GetFootprintDocumentationURL(), DS_DRAW_ITEM_TEXT::GetItemDescription(), PCB_DIMENSION_BASE::GetItemDescription(), PCB_FIELD::GetItemDescription(), PCB_TEXT::GetItemDescription(), PCB_TEXTBOX::GetItemDescription(), SCH_GLOBALLABEL::GetItemDescription(), SCH_HIERLABEL::GetItemDescription(), SCH_LABEL::GetItemDescription(), SCH_SHEET_PIN::GetItemDescription(), SCH_TEXT::GetItemDescription(), SCH_TEXTBOX::GetItemDescription(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadNet(), PCB_TEXTBOX::GetMinSize(), SCH_TEXTBOX::GetMinSize(), DS_DRAW_ITEM_BASE::GetMsgPanelInfo(), PCB_DIM_LEADER::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_LABEL_BASE::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), GetNetNavigatorItemText(), FOOTPRINT::GetReference(), PCB_FIELD::GetShownText(), SCH_LABEL_BASE::GetShownText(), SCH_TEXT::GetShownText(), PCB_FOOTPRINT_FIELD_PROPERTY::getter(), SCH_FIELD::GetText(), FOOTPRINT::GetValue(), PCB_FIELDS_GRID_TABLE::GetValue(), SCH_SHEET_PIN::HasConnectivityChanges(), hash_fp_item(), DIPTRACE_SCH_IMPORT_FIXTURE::HasLabelOnSheet(), DIPTRACE_SCH_IMPORT_FIXTURE::HasLabelStartingWithOnSheet(), SCH_SHEET::HasUndefinedPins(), SCH_DRAWING_TOOLS::importHierLabels(), SCH_TOOL_BASE< T >::Increment(), SCH_LABEL_BASE::IncrementLabel(), DIPTRACE_SCH_IMPORT_FIXTURE::LabelConnectsToWireOnSheet(), Levenshtein(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), SCH_IO_EAGLE::loadSegments(), PCB_TEXT::Matches(), PCB_TEXTBOX::Matches(), SCH_LABEL_BASE::Matches(), SCH_SHEET_PIN::Matches(), SCH_TEXT::Matches(), SCH_TEXTBOX::Matches(), DIALOG_SHEET_PIN_PROPERTIES::onComboBox(), FOOTPRINT::cmp_drawings::operator()(), std::hash< EDA_TEXT >::operator()(), SCH_TEXT::operator<(), SCH_TEXTBOX::operator<(), operator<<(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), PCB_FIELD::PCB_FIELD(), processTextItem(), CONNECTION_GRAPH::RebuildNetChains(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_LEGACY::saveText(), 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(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), SCH_MARKER::SerializeToString(), SCH_LABEL_BASE::SetLabelShape(), SCH_IO_LTSPICE_PARSER::setTextJustification(), SCH_EDIT_TOOL::SwapPinLabels(), SCH_EDIT_TOOL::SwapUnitLabels(), PNS_KICAD_IFACE_BASE::syncDimension(), ERC_TESTER::TestTextVars(), DIALOG_LABEL_PROPERTIES::TransferDataToWindow(), DIALOG_TABLE_PROPERTIES::TransferDataToWindow(), PANEL_SYNC_SHEET_PINS::UpdateForms(), PCB_DIM_LEADER::updateGeometry(), and PCB_TEXT::ViewGetLOD().
|
inlinevirtual |
Reimplemented in PCB_TEXT, and PCB_TEXTBOX.
Definition at line 168 of file eda_text.h.
References m_attributes.
Referenced by AdjustFieldForSymbolOrientation(), AdjustTextForSymbolOrientation(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_EDIT_TOOL::ChangeTextType(), SCH_TEXTBOX::compare(), SCH_DRAWING_TOOLS::createNewText(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), KIGFX::SCH_PAINTER::draw(), SCH_TABLE::DrawBorders(), SCH_DRAWING_TOOLS::DrawShape(), CADSTAR_ARCHIVE_PARSER::FixTextPositionNoAlignment(), SCH_LABEL::GetBodyBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), SCH_TEXTBOX::GetDrawPos(), GetDrawRotation(), SCH_FIELD::GetDrawRotation(), SCH_TEXTBOX::GetMinSize(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), SCH_LABEL_BASE::GetSpinStyle(), FIELDS_GRID_TABLE::GetValue(), SCH_SELECTION_TOOL::GuessSelectionCandidates(), SCH_EDIT_TOOL::JustifyText(), SCH_IO_EAGLE::loadFieldAttributes(), SCH_TEXT::MirrorHorizontally(), SCH_TEXTBOX::MirrorHorizontally(), SCH_TEXT::MirrorSpinStyle(), SCH_TEXT::MirrorVertically(), SCH_TEXTBOX::MirrorVertically(), SCH_TABLE::Normalize(), SCH_TEXT::NormalizeJustification(), SCH_FIELD::Plot(), SCH_TEXT::Plot(), SCH_TEXTBOX::Plot(), SCH_SYMBOL::PlotLocalPowerIconShape(), positioningChanged(), positioningChanged(), SCH_EDIT_TOOL::Rotate(), SCH_FIELD::Rotate(), SCH_TEXTBOX::Rotate(), SCH_TEXT::Rotate90(), SCH_TEXTBOX::Rotate90(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_SEXPR::saveField(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveField(), 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(), SimulateRenderTransform(), swapFieldPositionsWithMatching(), EASYEDA_PARSER_BASE::TransformTextToBaseline(), DIALOG_FIELD_PROPERTIES::UpdateField(), and DIPTRACE_SCH_IMPORT_FIXTURE::ValueFieldAngleDegrees().
|
inline |
Definition at line 175 of file eda_text.h.
References m_attributes.
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC(), PCB_DIMENSION_BASE::GetTextAngleDegreesProp(), Serialize(), PCB_TEXTBOX::Serialize(), and SCH_TEXTBOX::Serialize().
| BOX2I EDA_TEXT::GetTextBox | ( | const RENDER_SETTINGS * | aSettings, |
| int | aLine = -1 ) const |
Useful in multiline texts to calculate the full text or a line area (for zones filling, locate functions....)
| aLine | The line of text to consider. Pass -1 for all lines. |
Definition at line 773 of file eda_text.cpp.
References GetDrawFont(), GetDrawPos(), GetEffectiveTextPenWidth(), getFontMetrics(), BOX2< Vec >::GetHeight(), GetHorizJustify(), KIFONT::FONT::GetInterline(), GetShownText(), GetTextSize(), GetVertJustify(), BOX2< Vec >::GetWidth(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_INDETERMINATE, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, GR_TEXT_V_ALIGN_BOTTOM, GR_TEXT_V_ALIGN_CENTER, GR_TEXT_V_ALIGN_INDETERMINATE, GR_TEXT_V_ALIGN_TOP, IsBold(), IsItalic(), IsMirrored(), IsMultilineAllowed(), KIFONT::FONT::IsStroke(), ITALIC_TILT, KiROUND(), m_bbox_cache, m_bbox_cacheMutex, BOX2< Vec >::Normalize(), BOX2< Vec >::Offset(), BOX2< Vec >::SetOrigin(), BOX2< Vec >::SetSize(), BOX2< Vec >::SetX(), BOX2< Vec >::SetY(), KIFONT::FONT::StringBoundaryLimits(), text, wxStringSplit(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), LABEL_BBOX_FIXTURE::CheckLabelBodyBoundingBox(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), SCH_GLOBALLABEL::CreateGraphicShape(), KIGFX::PCB_PAINTER::draw(), SCH_HIERLABEL::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), DS_DRAW_ITEM_TEXT::GetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_TEXT::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), PCB_TEXTBOX::GetMinSize(), SCH_TEXTBOX::GetMinSize(), SCH_TEXT::GetOffsetToMatchSCH_FIELD(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), SCH_TEXT::NormalizeJustification(), TextHitTest(), TextHitTest(), PCB_TEXT::TextHitTest(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), and PCB_DIM_RADIAL::updateGeometry().
|
inline |
Definition at line 291 of file eda_text.h.
References m_attributes.
Referenced by DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), SCH_FIELD::GetFieldColor(), SCH_LABEL_BASE::GetLabelColor(), KIGFX::SCH_PAINTER::getRenderColor(), FIELDS_GRID_TABLE::GetValue(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), SCH_TEXT::Plot(), SCH_TEXTBOX::Plot(), DS_DRAW_ITEM_TEXT::PrintWsItem(), Serialize(), and SCH_TEXTBOX::Serialize().
|
inlinevirtual |
Definition at line 288 of file eda_text.h.
References GetTextSize(), and VECTOR2< T >::y.
Referenced by SCH_LABEL_BASE::AutoplaceFields(), SCH_FIELD::compare(), SCH_TEXT::compare(), SCH_TEXTBOX::compare(), SCH_GLOBALLABEL::CreateGraphicShape(), SCH_HIERLABEL::CreateGraphicShape(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), SCH_HIERLABEL::GetBodyBoundingBox(), GetInterline(), PCB_TEXT::getKnockoutMargin(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_GLOBALLABEL::GetSchematicTextOffset(), FIELDS_GRID_TABLE::GetValue(), PCB_FIELDS_GRID_TABLE::GetValue(), hash_fp_item(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), ALTIUM_PCB::HelperSetTextboxAlignmentAndPos(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), SCH_IO_EAGLE::loadInstance(), SCH_IO_EAGLE::loadLibrary(), SCH_IO_KICAD_SEXPR::saveField(), SCH_IO_LTSPICE_PARSER::setTextJustification(), PCB_DIM_ALIGNED::updateText(), PCB_DIM_ORTHOGONAL::updateText(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::Validate().
|
inlinevirtual |
Reimplemented in PCB_TEXT.
Definition at line 294 of file eda_text.h.
References m_pos.
Referenced by PCB_IO_IPC2581::addText(), SCH_LABEL_BASE::AutoplaceFields(), SCH_FIELD::compare(), SCH_TEXT::compare(), SCH_SHEET_PIN::ConstrainOnEdge(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SCH_GLOBALLABEL::doIsConnected(), SCH_HIERLABEL::doIsConnected(), SCH_LABEL::doIsConnected(), KIGFX::DS_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), PCB_TEXT::Flip(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), SCH_HIERLABEL::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), SCH_LABEL_BASE::GetBodyBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_LABEL_BASE::GetConnectionPoints(), GetDrawPos(), SCH_LABEL_BASE::GetEndPoints(), SCH_SHEET_PIN::GetEndPoints(), SCH_FIELD::GetLibPosition(), DS_DRAW_ITEM_TEXT::GetPosition(), SCH_FIELD::GetPosition(), SCH_TEXT::GetPosition(), PCB_TEXT::GetTextPos(), FIELDS_GRID_TABLE::GetValue(), FEATURES_MANAGER::InitFeatureList(), PCB_DIMENSION_BASE::Mirror(), SCH_DIRECTIVE_LABEL::MirrorHorizontally(), SCH_FIELD::MirrorHorizontally(), SCH_SHEET_PIN::MirrorHorizontally(), SCH_TEXT::MirrorHorizontally(), SCH_DIRECTIVE_LABEL::MirrorVertically(), SCH_FIELD::MirrorVertically(), SCH_SHEET_PIN::MirrorVertically(), SCH_TEXT::MirrorVertically(), SCH_TEXT::NormalizeJustification(), PCB_TEXT::Offset(), DIALOG_UPDATE_SYMBOL_FIELDS::onOkButtonClicked(), std::hash< EDA_TEXT >::operator()(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), BRDITEMS_PLOTTER::PlotText(), DIALOG_CHANGE_SYMBOLS::processSymbols(), SCH_LABEL_BASE::Rotate(), SCH_SHEET_PIN::Rotate(), SCH_TEXT::Rotate(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), Serialize(), PCB_TEXT::SetLibTextPos(), SCH_LABEL_BASE::SetPosition(), SetTextPos(), SetTextX(), SetTextY(), FIELDS_GRID_TABLE::SetValue(), EASYEDA_PARSER_BASE::TransformTextToBaseline(), and SCH_LABEL_BASE::UpdateDanglingState().
|
inlinevirtual |
Reimplemented in PCB_TEXT, and PCB_TEXTBOX.
Definition at line 282 of file eda_text.h.
References m_attributes.
Referenced by SCH_SHEET::AutoplaceFields(), SCH_EDIT_TOOL::ChangeTextType(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), PCB_IO_KICAD_SEXPR::format(), GetEffectiveTextPenWidth(), GetEffectiveTextShape(), SCH_LABEL_BASE::GetLabelBoxExpansion(), SCH_TEXTBOX::GetLegacyTextMargin(), SCH_TEXT::GetOffsetToMatchSCH_FIELD(), GetRenderCache(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), GetTextBox(), GetTextHeight(), SCH_TEXT::GetTextOffset(), PCB_TEXT::GetTextSize(), PCB_TEXTBOX::GetTextSize(), GetTextWidth(), SCH_IO_EAGLE::loadFieldAttributes(), SCH_FIELD::Plot(), BRDITEMS_PLOTTER::PlotText(), printOneLineOfText(), SCH_IO_KICAD_LEGACY::saveSheet(), Serialize(), SCH_TEXTBOX::Serialize(), and EASYEDA_PARSER_BASE::TransformTextToBaseline().
| wxString EDA_TEXT::GetTextStyleName | ( | ) | const |
Definition at line 1029 of file eda_text.cpp.
References _, IsBold(), and IsItalic().
Referenced by SCH_FIELD::GetMsgPanelInfo().
|
inlinevirtual |
Reimplemented in PCB_TEXT, and PCB_TEXTBOX.
Definition at line 149 of file eda_text.h.
References m_attributes.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), Format(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::formatRenderCache(), GetAutoThickness(), GetEffectiveTextPenWidth(), PCB_TEXT::GetTextThickness(), PCB_TEXTBOX::GetTextThickness(), GetTextThicknessProperty(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), SCH_IO_KICAD_LEGACY::saveText(), Serialize(), and SCH_TEXTBOX::Serialize().
|
inline |
Definition at line 151 of file eda_text.h.
References GetAutoThickness(), GetEffectiveTextPenWidth(), and GetTextThickness().
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC().
| const std::vector< TEXT_VAR_REF_KEY > & EDA_TEXT::GetTextVarReferences | ( | ) | const |
Return the set of ${...} references extracted from the source text.
The result is cached lazily and invalidated on SetText/CopyText/Replace. Consumers (the reactive dependency tracker) may call this at high frequency on items that rarely change; the cache avoids repeat lexing.
Definition at line 650 of file eda_text.cpp.
References m_text_var_refs.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and BOOST_AUTO_TEST_CASE().
|
inlinevirtual |
Definition at line 285 of file eda_text.h.
References GetTextSize(), and VECTOR2< T >::x.
Referenced by SCH_FIELD::compare(), SCH_TEXT::compare(), SCH_TEXTBOX::compare(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), GetEffectiveTextPenWidth(), PCB_TEXT::getKnockoutMargin(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), SCH_FIELD::GetMsgPanelInfo(), SCH_LABEL_BASE::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), SCH_HIERLABEL::GetSchematicTextOffset(), SCH_FIELD::GetSchTextSize(), SCH_TEXT::GetSchTextSize(), SCH_TEXTBOX::GetSchTextSize(), PCB_FIELDS_GRID_TABLE::GetValue(), hash_fp_item(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), ALTIUM_PCB::HelperSetTextboxAlignmentAndPos(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY::saveText(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_RADIAL::updateGeometry(), DIALOG_FIELD_PROPERTIES::updateText(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::Validate().
|
inline |
Definition at line 224 of file eda_text.h.
References m_attributes.
Referenced by AdjustTextForSymbolOrientation(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_DRAWING_TOOLS::createNewText(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SCH_DRAWING_TOOLS::DrawShape(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), PCB_TEXTBOX::GetDrawPos(), SCH_TEXTBOX::GetDrawPos(), SCH_FIELD::GetEffectiveVertJustify(), GetLinePositions(), SCH_FIELD::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), GetTextBox(), hash_fp_item(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), IsDefaultFormatting(), SCH_FIELD::IsVertJustifyFlipped(), PCB_TEXT::KeepUpright(), SCH_IO_EAGLE::loadFieldAttributes(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), SCH_TEXT::MirrorHorizontally(), SCH_TEXT::MirrorVertically(), SCH_TEXT::NormalizeJustification(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_FIELD::Plot(), positioningChanged(), positioningChanged(), printOneLineOfText(), processTextItem(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), SimulateRenderTransform(), SCH_EDIT_TOOL::Swap(), and swapFieldPositionsWithMatching().
|
static |
Generate a href to a page in the current schematic.
| aDestination | Destination sheet's page number. |
Definition at line 1335 of file eda_text.cpp.
Referenced by SCH_LABEL_BASE::Plot(), and SCH_SHEET::Plot().
|
inlinevirtual |
Definition at line 423 of file eda_text.h.
References m_hyperlink.
Referenced by SCH_TEXT::DoHypertextAction(), SCH_TEXTBOX::DoHypertextAction(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), Format(), SCH_TEXT::HasHypertext(), SCH_TEXTBOX::HasHypertext(), SCH_TEXT::Plot(), and SCH_TEXTBOX::Plot().
|
inline |
Indicates the ShownText has text var references which need to be processed.
Definition at line 129 of file eda_text.h.
References m_shown_text_has_text_var_refs.
Referenced by BACK_ANNOTATE::applyChangelist(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_LABEL_BASE::cacheShownText(), KIGFX::SCH_PAINTER::draw(), PCB_TABLECELL::GetShownText(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), SCH_FIELD::GetShownText(), SCH_LABEL_BASE::GetShownText(), SCH_TABLECELL::GetShownText(), SCH_TEXT::GetShownText(), SCH_TEXTBOX::GetShownText(), SCH_LABEL_BASE::HasCachedDriverName(), and SCH_LABEL_BASE::SCH_LABEL_BASE().
|
inline |
Definition at line 205 of file eda_text.h.
References m_attributes.
Referenced by BOARD_ADAPTER::addText(), SCH_EDIT_TOOL::ChangeTextType(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), SCH_TEXTBOX::compare(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), KIGFX::DS_PAINTER::draw(), SCH_DRAWING_TOOLS::DrawShape(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), GetDrawFont(), SCH_FIELD::GetDrawFont(), SCH_TEXT::GetDrawFont(), SCH_TEXTBOX::GetDrawFont(), GetEffectiveTextPenWidth(), KIGFX::SCH_PAINTER::getFont(), SCH_LABEL_BASE::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), PCB_TABLECELL::GetShownText(), PCB_TEXTBOX::GetShownText(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), GetTextBox(), GetTextStyleName(), FIELDS_GRID_TABLE::GetValue(), FIELDS_GRID_TABLE::GetValueAsBool(), hash_fp_item(), IsDefaultFormatting(), SCH_IO_EAGLE::loadFieldAttributes(), FOOTPRINT::cmp_drawings::operator()(), printOneLineOfText(), ResolveFont(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), SetFontProp(), SetItalic(), and FIELDS_GRID_TABLE::SetValue().
| bool EDA_TEXT::IsDefaultFormatting | ( | ) | const |
Definition at line 1085 of file eda_text.cpp.
References GetAutoThickness(), GetFontName(), GetHorizJustify(), GetVertJustify(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, IsBold(), IsItalic(), IsMirrored(), and IsMultilineAllowed().
Referenced by SCH_IO_KICAD_SEXPR::saveField().
|
static |
Check if aHref is a valid internal hyperlink.
| aHref | String to validate |
| aDestination | [optional] pointer to populate with the destination page |
Definition at line 1329 of file eda_text.cpp.
Referenced by PDF_PLOTTER::endPlotEmitResources(), SCH_NAVIGATE_TOOL::HypertextCommand(), and ValidateHyperlink().
|
inline |
Definition at line 190 of file eda_text.h.
References m_attributes.
Referenced by BOARD_ADAPTER::addText(), SCH_DIRECTIVE_LABEL::AutoplaceFields(), SCH_EDIT_TOOL::ChangeTextType(), LABEL_BBOX_FIXTURE::CheckTextBoundingBoxWidth(), SCH_TEXTBOX::compare(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), KIGFX::DS_PAINTER::draw(), SCH_DRAWING_TOOLS::DrawShape(), EDA_TEXT_DESC::EDA_TEXT_DESC(), Format(), GetDrawFont(), SCH_FIELD::GetDrawFont(), SCH_TEXT::GetDrawFont(), SCH_TEXTBOX::GetDrawFont(), KIGFX::SCH_PAINTER::getFont(), SCH_LABEL_BASE::GetMsgPanelInfo(), SCH_TABLECELL::GetMsgPanelInfo(), SCH_TEXT::GetMsgPanelInfo(), SCH_TEXTBOX::GetMsgPanelInfo(), PCB_TABLECELL::GetShownText(), PCB_TEXTBOX::GetShownText(), SCH_TABLECELL::GetShownText(), SCH_TEXTBOX::GetShownText(), GetTextBox(), GetTextStyleName(), FIELDS_GRID_TABLE::GetValue(), FIELDS_GRID_TABLE::GetValueAsBool(), PCB_FIELDS_GRID_TABLE::GetValueAsBool(), hash_fp_item(), IsDefaultFormatting(), FOOTPRINT::cmp_drawings::operator()(), printOneLineOfText(), ResolveFont(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY::saveText(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), SetBold(), SetFontProp(), and FIELDS_GRID_TABLE::SetValue().
|
inline |
Definition at line 227 of file eda_text.h.
References m_attributes.
Referenced by PCB_IO_KICAD_SEXPR::format(), PCB_TEXT::GetDrawRotation(), PCB_FIELDS_GRID_TABLE::GetValueAsBool(), PCB_TEXT::KeepUpright(), PCB_TEXT_DESC::PCB_TEXT_DESC(), Serialize(), PCB_TEXTBOX::Serialize(), and SCH_TEXTBOX::Serialize().
|
inline |
Definition at line 211 of file eda_text.h.
References m_attributes.
Referenced by PCAD2KICAD::PCAD_TEXT::AddToBoard(), BOOST_AUTO_TEST_CASE(), EDA_TEXT_DESC::EDA_TEXT_DESC(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), Format(), PCB_TEXTBOX::GetDrawPos(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), GetRenderCache(), GetTextBox(), PCB_FIELDS_GRID_TABLE::GetValueAsBool(), hash_fp_item(), IsDefaultFormatting(), PCB_DIMENSION_BASE::Mirror(), FOOTPRINT::cmp_drawings::operator()(), PCB_IO_EAGLE::orientFPText(), printOneLineOfText(), Serialize(), PCB_TEXTBOX::Serialize(), SCH_TEXTBOX::Serialize(), and SetupRenderCache().
|
inline |
Definition at line 218 of file eda_text.h.
References m_attributes.
Referenced by GetTextBox(), FEATURES_MANAGER::InitFeatureList(), IsDefaultFormatting(), BRDITEMS_PLOTTER::PlotText(), Print(), Serialize(), PCB_TEXTBOX::Serialize(), and SCH_TEXTBOX::Serialize().
|
inlinevirtual |
Definition at line 208 of file eda_text.h.
References m_visible.
Referenced by SCH_EDITOR_CONTROL::AssignFootprints(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), MULTICHANNEL_TOOL::copyRuleAreaContents(), EDIT_TOOL::DeleteItems(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SYMBOL_EDITOR_EDIT_TOOL::DoDelete(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawVia(), EDA_TEXT_DESC::EDA_TEXT_DESC(), SCH_EDIT_TOOL::EditField(), SCH_EDIT_TOOL::EditProperties(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_IPC2581::generateLayerSetNet(), LIB_SYMBOL::GetFields(), PCB_SHAPE::getHatchingKnockouts(), SCH_FIELD::GetMsgPanelInfo(), FIELDS_GRID_TABLE::GetValue(), FIELDS_GRID_TABLE::GetValueAsBool(), PCB_FIELDS_GRID_TABLE::GetValueAsBool(), SCH_FIELD::HasSameContent(), SCH_FIELD::ImportValues(), FEATURES_MANAGER::InitFeatureList(), DRC_RTREE::Insert(), GENERAL_COLLECTOR::Inspect(), PCB_FIELD::Matches(), SCH_FIELD::Matches(), SIM_MODEL::MigrateSimModel(), DIALOG_UPDATE_SYMBOL_FIELDS::onOkButtonClicked(), PCB_FIELD::PCB_FIELD(), SCH_FIELD::Plot(), SCH_TEXT::Plot(), LIB_SYMBOL::PlotFields(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), DIALOG_CHANGE_SYMBOLS::processSymbols(), processTextItem(), SCH_IO_KICAD_LEGACY::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_SEXPR::saveField(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), PCB_SELECTION_TOOL::Selectable(), SCH_SELECTION_TOOL::Selectable(), PCB_FIELD::Serialize(), SCH_FIELD::Serialize(), PNS_KICAD_IFACE_BASE::syncDimension(), PNS_KICAD_IFACE_BASE::syncTextItem(), SCH_SHEET_PATH::UpdateAllScreenReferences(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
| double EDA_TEXT::Levenshtein | ( | const EDA_TEXT & | aOther | ) | const |
Return the levenstein distance between two texts.
Return a value of 0.0 - 1.0 where 1.0 is a perfect match.
Definition at line 1268 of file eda_text.cpp.
References distance(), EDA_TEXT(), and GetText().
Referenced by Similarity().
|
static |
Definition at line 70 of file eda_text.cpp.
References GR_TEXT_H_ALIGN_LEFT, and GR_TEXT_H_ALIGN_RIGHT.
Referenced by DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), FIELDS_GRID_TABLE::SetValue(), DIALOG_FIELD_PROPERTIES::UpdateField(), and DIALOG_FIELD_PROPERTIES::UpdateField().
|
static |
Definition at line 84 of file eda_text.cpp.
References GR_TEXT_V_ALIGN_BOTTOM, and GR_TEXT_V_ALIGN_TOP.
Referenced by DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), FIELDS_GRID_TABLE::SetValue(), DIALOG_FIELD_PROPERTIES::UpdateField(), and DIALOG_FIELD_PROPERTIES::UpdateField().
|
virtual |
Reimplemented in PCB_TEXT.
Definition at line 595 of file eda_text.cpp.
References ANGLE_0, ClearBoundingBoxCache(), m_pos, m_render_cache, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by CADSTAR_ARCHIVE_PARSER::FixTextPositionNoAlignment(), PCB_TEXTBOX::Move(), SCH_FIELD::Move(), SCH_SHEET_PIN::Move(), SCH_TEXT::Move(), SCH_TEXTBOX::Move(), PCB_TEXT::Offset(), PCB_TEXT::SetLibTextPos(), SCH_IO_LTSPICE_PARSER::setTextJustification(), SetTextPos(), SetTextX(), SetTextY(), SCH_SYMBOL::SyncOtherUnits(), DIALOG_LABEL_PROPERTIES::TransferDataToWindow(), DIALOG_SHEET_PROPERTIES::TransferDataToWindow(), and DIALOG_SYMBOL_PROPERTIES::TransferDataToWindow().
|
inline |
Definition at line 420 of file eda_text.h.
References Compare(), and EDA_TEXT().
Definition at line 138 of file eda_text.cpp.
References EDA_TEXT(), m_attributes, m_bbox_cache, m_bbox_cacheMutex, m_pos, m_render_cache, m_shown_text, m_shown_text_has_text_var_refs, m_text, m_text_var_refs, m_unresolvedFontName, and m_visible.
Referenced by PCB_TEXT::operator=(), SCH_FIELD::operator=(), and SCH_FIELD::SCH_FIELD().
|
inline |
Definition at line 419 of file eda_text.h.
References Compare(), and EDA_TEXT().
Referenced by SCH_FIELD::HasSameContent(), PCB_DIMENSION_BASE::operator==(), PCB_FIELD::operator==(), PCB_TEXT::operator==(), PCB_TEXTBOX::operator==(), SCH_FIELD::operator==(), SCH_TEXT::operator==(), and SCH_TEXTBOX::operator==().
|
inline |
Definition at line 421 of file eda_text.h.
References Compare(), and EDA_TEXT().
| void EDA_TEXT::Print | ( | const RENDER_SETTINGS * | aSettings, |
| const VECTOR2I & | aOffset, | ||
| const COLOR4D & | aColor ) |
Print this text object to the device context aDC.
| aDC | the current Device Context. |
| aOffset | draw offset (usually (0,0)). |
| aColor | text color. |
Definition at line 921 of file eda_text.cpp.
References GetDrawPos(), GetLinePositions(), GetShownText(), IsMultilineAllowed(), printOneLineOfText(), and wxStringSplit().
Referenced by DS_DRAW_ITEM_TEXT::PrintWsItem().
|
protected |
Print each line of this EDA_TEXT.
| aOffset | draw offset (usually (0,0)). |
| aColor | text color. |
| aText | the single line of text to draw. |
| aPos | the position of this line ). |
Definition at line 988 of file eda_text.cpp.
References KIGFX::RENDER_SETTINGS::GetDefaultPenWidth(), GetDrawFont(), GetDrawRotation(), GetEffectiveTextPenWidth(), getFontMetrics(), GetHorizJustify(), KIGFX::RENDER_SETTINGS::GetPrintDC(), GetTextSize(), GetVertJustify(), GRPrintText(), IsBold(), IsItalic(), IsMirrored(), and VECTOR2< T >::x.
Referenced by Print().
|
inline |
Definition at line 426 of file eda_text.h.
References m_hyperlink.
| bool EDA_TEXT::Replace | ( | const EDA_SEARCH_DATA & | aSearchData | ) |
Helper function used in search and replace dialog.
Perform a text replace using the find and replace criteria in aSearchData.
| aSearchData | A reference to a EDA_SEARCH_DATA object containing the search and replace criteria. |
Definition at line 482 of file eda_text.cpp.
References cacheShownText(), ClearBoundingBoxCache(), ClearRenderCache(), m_text, and EDA_ITEM::Replace().
Referenced by SCH_FIELD::Replace(), SCH_LABEL_BASE::Replace(), SCH_SHEET_PIN::Replace(), SCH_TEXT::Replace(), and SCH_TEXTBOX::Replace().
| bool EDA_TEXT::ResolveFont | ( | const std::vector< wxString > * | aEmbeddedFonts | ) |
Definition at line 503 of file eda_text.cpp.
References ClearBoundingBoxCache(), KIFONT::FONT::GetFont(), IsBold(), IsItalic(), m_attributes, m_render_cache, and m_unresolvedFontName.
Referenced by BOOST_AUTO_TEST_CASE().
|
overridevirtual |
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 from SERIALIZABLE.
Reimplemented in PCB_DIM_ALIGNED, PCB_DIM_CENTER, PCB_DIM_LEADER, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIMENSION_BASE, PCB_FIELD, PCB_TEXT, PCB_TEXTBOX, SCH_DIRECTIVE_LABEL, SCH_FIELD, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LABEL, SCH_SHEET_PIN, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 165 of file eda_text.cpp.
References pcbIUScale, and Serialize().
Referenced by Serialize(), PCB_DIMENSION_BASE::Serialize(), PCB_TEXT::Serialize(), SCH_FIELD::Serialize(), SCH_GLOBALLABEL::Serialize(), SCH_SHEET_PIN::Serialize(), and SCH_TEXT::Serialize().
| void EDA_TEXT::Serialize | ( | google::protobuf::Any & | aContainer, |
| const EDA_IU_SCALE & | aScale ) const |
Definition at line 171 of file eda_text.cpp.
References GetAttributes(), GetFont(), GetHorizJustify(), GetHyperlink(), GetLineSpacing(), GetText(), GetTextAngleDegrees(), GetTextColor(), GetTextPos(), GetTextSize(), GetTextThickness(), GetVertJustify(), IsBold(), IsItalic(), IsKeepUpright(), IsMirrored(), IsMultilineAllowed(), kiapi::common::PackColor(), kiapi::common::PackDistance(), kiapi::common::PackVector2(), text, ToProtoEnum(), and COLOR4D::UNSPECIFIED.
|
inline |
Definition at line 299 of file eda_text.h.
References m_activeUrl.
Referenced by KIGFX::SCH_PAINTER::draw(), and KIGFX::SCH_PAINTER::draw().
| void EDA_TEXT::SetAttributes | ( | const EDA_TEXT & | aSrc, |
| bool | aSetPosition = true ) |
Set the text attributes from another instance.
Definition at line 428 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), EDA_TEXT(), m_attributes, and m_pos.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), MULTICHANNEL_TOOL::copyRuleAreaContents(), Deserialize(), PCB_TEXTBOX::Deserialize(), SCH_TEXTBOX::Deserialize(), SCH_FIELD::ImportValues(), SCH_IO_EAGLE::loadLibrary(), SIM_MODEL::MigrateSimModel(), DIALOG_LABEL_PROPERTIES::OnAddField(), DIALOG_UPDATE_SYMBOL_FIELDS::onOkButtonClicked(), PCB_FIELD::PCB_FIELD(), DIALOG_CHANGE_SYMBOLS::processSymbols(), processTextItem(), and CLIPBOARD_IO::SaveSelection().
|
inline |
Definition at line 251 of file eda_text.h.
References m_attributes.
| void EDA_TEXT::SetAutoThickness | ( | bool | aAuto | ) |
Definition at line 287 of file eda_text.cpp.
References GetAutoThickness(), GetEffectiveTextPenWidth(), and SetTextThickness().
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC().
| void EDA_TEXT::SetBold | ( | bool | aBold | ) |
Set the text to be bold - this will also update the font if needed.
This is the properties system interface.
Definition at line 330 of file eda_text.cpp.
References GetFont(), KIFONT::FONT::GetFont(), KIFONT::FONT::GetName(), GetPenSizeForBold(), GetPenSizeForNormal(), IsItalic(), KIFONT::FONT::IsStroke(), m_attributes, SetBoldFlag(), and SetFont().
Referenced by SCH_IO_ALTIUM::AddTextBox(), CADSTAR_PCB_ARCHIVE_LOADER::applyTextCode(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), SCH_EDIT_TOOL::ChangeTextType(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), EDA_TEXT_DESC::EDA_TEXT_DESC(), SCH_IO_EAGLE::loadFieldAttributes(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), SCH_IO_EAGLE::loadTextAttributes(), SCH_IO_ALTIUM::ParseLabel(), FIELDS_GRID_TABLE::SetValue(), FIELDS_GRID_TABLE::SetValueAsBool(), SCH_DRAWING_TOOLS::TwoClickPlace(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), and DIALOG_FIELD_PROPERTIES::updateText().
| void EDA_TEXT::SetBoldFlag | ( | bool | aBold | ) |
Set only the bold flag, without changing the font.
Used when bulk-changing text attributes (e.g. from a dialog or import).
Definition at line 373 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by ALTIUM_PCB::ConvertTexts6ToEdaTextSettings(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), SCH_IO_KICAD_LEGACY::loadSymbol(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), and SetBold().
| void EDA_TEXT::SetFont | ( | KIFONT::FONT * | aFont | ) |
Definition at line 495 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::applyTextCode(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_EDIT_TOOL::ChangeTextType(), ALTIUM_PCB::ConvertTexts6ToEdaTextSettings(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), PCB_IO_EASYEDAPRO_PARSER::ParseBoard(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), SetBold(), SetFontProp(), SetItalic(), FIELDS_GRID_TABLE::SetValue(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), and DIALOG_FIELD_PROPERTIES::updateText().
| void EDA_TEXT::SetFontProp | ( | const wxString & | aFontName | ) |
Definition at line 1066 of file eda_text.cpp.
References _, KIFONT::FONT::GetFont(), IsBold(), IsEeschemaType(), IsItalic(), KICAD_FONT_NAME, and SetFont().
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC().
| void EDA_TEXT::SetHorizJustify | ( | GR_TEXT_H_ALIGN_T | aType | ) |
Definition at line 404 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), SCH_IO_ALTIUM::AddLibTextBox(), SCH_IO_ALTIUM::AddTextBox(), AdjustFieldForSymbolOrientation(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::ApplyFieldSettings(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), SCH_SHEET::AutoplaceFields(), FOOTPRINT::AutoPositionFields(), Build_Board_Stackup_Table(), SCH_IO_ALTIUM::CreateAliases(), SCH_DRAWING_TOOLS::createNewText(), PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), createSchText(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), SCH_DRAWING_TOOLS::DrawShape(), EaglePcbTextToKiCadAlignment(), eagleToKicadAlignment(), EDA_TEXT_DESC::EDA_TEXT_DESC(), FlipHJustify(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), ALTIUM_PCB::HelperSetTextboxAlignmentAndPos(), AUTOPLACER::justifyField(), PCB_TEXT::KeepUpright(), CADSTAR_PCB_ARCHIVE_LOADER::loadDimensions(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), SCH_IO_EAGLE::loadFieldAttributes(), PCB_IO_PADS::loadFootprints(), SCH_IO_EAGLE::loadFrame(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), SCH_IO_PADS::LoadSchematicFile(), SCH_IO_KICAD_LEGACY::loadSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), PCB_TEXT::Mirror(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), SCH_TEXT::MirrorHorizontally(), SCH_TEXTBOX::MirrorHorizontally(), SCH_TEXT::MirrorVertically(), SCH_TEXTBOX::MirrorVertically(), PCB_IO_EAGLE::orientFPText(), PCB_IO_EAGLE::packageText(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_ALTIUM::ParsePowerPort(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), PCB_TEXTBOX::PCB_TEXTBOX(), SCH_FIELD::Rotate(), SCH_TEXTBOX::SCH_TEXTBOX(), SCH_FIELD::SetEffectiveHorizJustify(), SCH_LABEL_BASE::SetSpinStyle(), SCH_IO_LTSPICE_PARSER::setTextJustification(), PCAD2KICAD::SetTextJustify(), FABMASTER::setupText(), FIELDS_GRID_TABLE::SetValue(), SCH_EDIT_TOOL::Swap(), swapFieldPositionsWithMatching(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), DIALOG_FIELD_PROPERTIES::UpdateField(), and DIALOG_FIELD_PROPERTIES::UpdateField().
|
inline |
Definition at line 425 of file eda_text.h.
References m_hyperlink.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), Deserialize(), EDA_TEXT_DESC::EDA_TEXT_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), and CLIPBOARD_IO::SaveSelection().
| void EDA_TEXT::SetItalic | ( | bool | aItalic | ) |
Set the text to be italic - this will also update the font if needed.
This is the properties system interface.
Definition at line 302 of file eda_text.cpp.
References GetFont(), KIFONT::FONT::GetFont(), KIFONT::FONT::GetName(), IsBold(), KIFONT::FONT::IsStroke(), m_attributes, SetFont(), and SetItalicFlag().
Referenced by SCH_IO_ALTIUM::AddTextBox(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_TEXT::AddToBoard(), CADSTAR_PCB_ARCHIVE_LOADER::applyTextCode(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), SCH_EDIT_TOOL::ChangeTextType(), ALTIUM_PCB::ConvertTexts6ToEdaTextSettings(), PCB_BASE_FRAME::CreateNewFootprint(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), DRAWING_TOOL::DrawDimension(), SCH_DRAWING_TOOLS::DrawShape(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), EDA_TEXT_DESC::EDA_TEXT_DESC(), SCH_IO_EAGLE::loadFieldAttributes(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnAddField(), DIALOG_LABEL_PROPERTIES::OnAddField(), SCH_IO_ALTIUM::ParseLabel(), FABMASTER::setupText(), FIELDS_GRID_TABLE::SetValue(), FIELDS_GRID_TABLE::SetValueAsBool(), PCB_FIELDS_GRID_TABLE::SetValueAsBool(), PCB_TEXT::StyleFromSettings(), PCB_TEXTBOX::StyleFromSettings(), SCH_DRAWING_TOOLS::TwoClickPlace(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), and DIALOG_FIELD_PROPERTIES::updateText().
| void EDA_TEXT::SetItalicFlag | ( | bool | aItalic | ) |
Set only the italic flag, without changing the font.
Used when bulk-changing text attributes (e.g. from a dialog or import).
Definition at line 322 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), SCH_IO_KICAD_LEGACY::loadSymbol(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), and SetItalic().
| void EDA_TEXT::SetKeepUpright | ( | bool | aKeepUpright | ) |
Definition at line 420 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCB_BASE_FRAME::CreateNewFootprint(), PCB_IO_PADS::loadFootprints(), PCB_IO_EAGLE::loadPlain(), PCB_IO_EAGLE::packageText(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), PCB_TEXT::PCB_TEXT(), PCB_TEXT_DESC::PCB_TEXT_DESC(), FABMASTER::setupText(), PCB_FIELDS_GRID_TABLE::SetValueAsBool(), PCB_TEXT::StyleFromSettings(), and PCB_TEXTBOX::StyleFromSettings().
| void EDA_TEXT::SetLineSpacing | ( | double | aLineSpacing | ) |
Definition at line 524 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), and SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT().
| void EDA_TEXT::SetMirrored | ( | bool | isMirrored | ) |
Definition at line 388 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_TEXT::AddToBoard(), ALTIUM_PCB::ConvertTexts6ToEdaTextSettings(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), DRAWING_TOOL::DrawDimension(), EaglePcbTextToKiCadAlignment(), EDA_TEXT_DESC::EDA_TEXT_DESC(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), PCB_DIMENSION_BASE::Mirror(), PCB_IO_EAGLE::packageText(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), PCB_TABLECELL::PCB_TABLECELL(), FABMASTER::setupText(), PCB_FIELDS_GRID_TABLE::SetValueAsBool(), PCB_FIELDS_GRID_TABLE::SetValueAsLong(), PCB_TEXT::StyleFromSettings(), PCB_TEXTBOX::StyleFromSettings(), and DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog().
| void EDA_TEXT::SetMultilineAllowed | ( | bool | aAllow | ) |
| aAllow | true if ok to use multiline option, false if ok to use only single line text. (Single line is faster in calculations than multiline.) |
Definition at line 396 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by BOOST_AUTO_TEST_CASE(), SCH_IO_LTSPICE_PARSER::CreateSCH_TEXT(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), PCB_TEXT::PCB_TEXT(), PCB_TEXTBOX::PCB_TEXTBOX(), SCH_LABEL_BASE::SCH_LABEL_BASE(), SCH_LABEL_BASE::SCH_LABEL_BASE(), SCH_TEXT::SCH_TEXT(), and SCH_TEXTBOX::SCH_TEXTBOX().
|
virtual |
Reimplemented in SCH_FIELD.
Definition at line 265 of file eda_text.cpp.
References cacheShownText(), and m_text.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), SCH_IO_EAGLE::addImplicitConnections(), SCH_IO_ALTIUM::AddLibTextBox(), SCH_IO_ALTIUM::AddTextBox(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_TEXT::AddToBoard(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), Build_Board_Characteristics_Table(), Build_Board_Stackup_Table(), buildCoincidentFootprint(), ALLEGRO::BOARD_BUILDER::buildFootprint(), buildLibTable(), PCB_EDIT_TABLE_TOOL::copyCell(), SCH_EDIT_TABLE_TOOL::copyCell(), SCH_IO_ALTIUM::CreateAliases(), SPRINT_LAYOUT_PARSER::CreateBoard(), createBoard(), PCB_BASE_FRAME::CreateNewFootprint(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_IO_LTSPICE_PARSER::CreateSCH_LABEL(), Deserialize(), PCB_TEXTBOX::Deserialize(), SCH_TEXTBOX::Deserialize(), KIGFX::SCH_PAINTER::draw(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), FOOTPRINT::DuplicateItem(), EDA_TEXT_DESC::EDA_TEXT_DESC(), PCB_IO_EASYEDAPRO_PARSER::fillFootprintModelInfo(), PCB_IO_EASYEDAPRO::FootprintLoad(), CADSTAR_SCH_ARCHIVE_LOADER::getKiCadSchText(), SCH_TOOL_BASE< T >::Increment(), SCH_LABEL_BASE::IncrementLabel(), CADSTAR_SCH_ARCHIVE_LOADER::loadBusses(), CADSTAR_SCH_ARCHIVE_LOADER::loadChildSheets(), PCB_IO_PADS::loadFootprints(), SCH_IO_EAGLE::loadFrame(), CADSTAR_SCH_ARCHIVE_LOADER::loadHierarchicalSheetPins(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), PCB_IO_EAGLE::loadPlain(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbolInstances(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), PCB_IO_PADS::loadTestPoints(), PCB_IO_EAGLE::orientFPText(), PCB_IO_EAGLE::packageText(), PCB_IO_EASYEDAPRO_PARSER::ParseBoard(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), PCB_IO_EASYEDAPRO_PARSER::ParseFootprint(), PCB_IO_KICAD_SEXPR_PARSER::parseFOOTPRINT_unchecked(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), SCH_IO_ALTIUM::ParseSheetEntry(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), PCB_IO_KICAD_SEXPR_PARSER::parseTextBoxContent(), PCB_IO_EASYEDA_PARSER::ParseToBoardItemContainer(), PCB_FIELD::PCB_FIELD(), processTextItem(), CLIPBOARD_IO::SaveSelection(), SCH_FIELD::SetName(), FOOTPRINT::SetReference(), PCB_FOOTPRINT_FIELD_PROPERTY::setter(), SCH_FIELD::SetText(), FABMASTER::setupText(), FOOTPRINT::SetValue(), PCB_FIELDS_GRID_TABLE::SetValue(), SCH_EDIT_TOOL::SwapPinLabels(), SCH_EDIT_TOOL::SwapUnitLabels(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLE_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), BOARD_NETLIST_UPDATER::updateFootprintParameters(), and PCB_DIMENSION_BASE::updateText().
|
virtual |
Reimplemented in PCB_TEXT, and PCB_TEXTBOX.
Definition at line 294 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by AdjustFieldForSymbolOrientation(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), SCH_SHEET::AutoplaceFields(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_DRAWING_TOOLS::createNewText(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), EaglePcbTextToKiCadAlignment(), eagleToKicadAlignment(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), SCH_IO_EAGLE::loadFieldAttributes(), SCH_IO_KICAD_LEGACY::loadSymbol(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), PCB_TEXTBOX::Mirror(), DIALOG_SHEET_PROPERTIES::OnAddField(), DIALOG_SYMBOL_PROPERTIES::OnAddField(), PCB_TEXTBOX::OnFootprintTransformed(), SCH_IO_ALTIUM::ParsePowerPort(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), SCH_TEXTBOX::Plot(), PCB_TEXTBOX::Rotate(), SCH_EDIT_TOOL::Rotate(), SCH_FIELD::Rotate(), SCH_TEXTBOX::Rotate(), SCH_TEXT::Rotate90(), SCH_TEXTBOX::Rotate90(), SCH_LABEL_BASE::SetSpinStyle(), PCB_TEXT::SetTextAngle(), SetTextAngleDegrees(), SCH_IO_LTSPICE_PARSER::setTextJustification(), FIELDS_GRID_TABLE::SetValue(), swapFieldPositionsWithMatching(), and DIALOG_FIELD_PROPERTIES::updateText().
|
inline |
Definition at line 171 of file eda_text.h.
References DEGREES_T, and SetTextAngle().
Referenced by PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::ApplyFieldSettings(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildMultiUnitConnectorSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildMultiUnitSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildSymbol(), PCB_DIMENSION_BASE::ChangeTextAngleDegrees(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::CreateCustomFields(), createSchText(), EDA_TEXT_DESC::EDA_TEXT_DESC(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::GetOrCreateConnectorPinSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::GetOrCreatePartTypeSymbol(), PCB_IO_EASYEDAPRO_PARSER::ParseBoard(), SCH_EASYEDA_PARSER::ParseSchematic(), and SCH_EASYEDA_PARSER::ParseSymbolShapes().
|
inline |
Definition at line 290 of file eda_text.h.
References m_attributes.
Referenced by DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), EDA_TEXT_DESC::EDA_TEXT_DESC(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), FIELDS_GRID_TABLE::SetValue(), and DIALOG_FIELD_PROPERTIES::updateText().
|
virtual |
Definition at line 565 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), m_attributes, m_IuScale, TEXT_MAX_SIZE_MM, and TEXT_MIN_SIZE_MM.
Referenced by CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), EDA_TEXT_DESC::EDA_TEXT_DESC(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), FABMASTER::setupText(), PCB_FIELDS_GRID_TABLE::SetValue(), and DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog().
|
virtual |
Definition at line 576 of file eda_text.cpp.
References GetTextPos(), Offset(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by PCAD2KICAD::PCAD_TEXT::AddToBoard(), BACK_ANNOTATE::applyChangelist(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), CADSTAR_SCH_ARCHIVE_LOADER::applyToLibraryFieldAttribute(), SCH_SHEET::AutoplaceFields(), SCH_FIELD::BeginEdit(), SCH_TEXT::BeginEdit(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), buildCoincidentFootprint(), SCH_FIELD::CalcEdit(), SCH_TEXT::CalcEdit(), SCH_EDIT_TOOL::ChangeTextType(), Deserialize(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), DRAWING_TOOL::DrawDimension(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), CADSTAR_PCB_ARCHIVE_LOADER::loadDimensions(), SCH_IO_EAGLE::loadFieldAttributes(), SCH_IO_EAGLE::loadInstance(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), PCB_IO_EAGLE::loadPlain(), SCH_IO_KICAD_LEGACY::loadSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), PCB_DIMENSION_BASE::Mirror(), SCH_TEXT::NormalizeJustification(), PCB_IO_EAGLE::orientFPText(), SCH_IO_ALTIUM::ParseLibParameter(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), SCH_IO_KICAD_SEXPR_PARSER::parseSchText(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), PCB_TEXT::PCB_TEXT(), DIALOG_CHANGE_SYMBOLS::processSymbols(), PCB_DIMENSION_BASE::Rotate(), PCB_TEXT::Rotate(), SCH_LABEL_BASE::Rotate(), SCH_SHEET_PIN::Rotate(), SCH_TEXT::Rotate(), SCH_SHEET_PIN::SCH_SHEET_PIN(), SCH_TEXT::SCH_TEXT(), DS_DRAW_ITEM_TEXT::SetPosition(), PCB_TEXT::SetPosition(), SCH_FIELD::SetPosition(), SCH_TEXT::SetPosition(), FABMASTER::setupText(), FIELDS_GRID_TABLE::SetValue(), EASYEDA_PARSER_BASE::TransformTextToBaseline(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), DIALOG_FIELD_PROPERTIES::UpdateField(), SCH_SYMBOL::UpdateFields(), PCB_DIM_ALIGNED::updateText(), PCB_DIM_CENTER::updateText(), and PCB_DIM_ORTHOGONAL::updateText().
|
virtual |
Reimplemented in PCB_TEXT, and PCB_TEXTBOX.
Definition at line 532 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), m_attributes, m_IuScale, TEXT_MAX_SIZE_MM, TEXT_MIN_SIZE_MM, unityScale, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SCH_IO_EAGLE::addImplicitConnections(), SCH_IO_ALTIUM::AddLibTextBox(), SCH_IO_ALTIUM::AddTextBox(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::ApplyFieldSettings(), CADSTAR_PCB_ARCHIVE_LOADER::applyTextCode(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildMultiUnitConnectorSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildMultiUnitSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildSymbol(), SCH_EDIT_TOOL::ChangeTextType(), ALTIUM_PCB::ConvertTexts6ToEdaTextSettings(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::CreateCustomFields(), SCH_IO_LTSPICE_PARSER::CreateFields(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::CreateNetLabel(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), SCH_IO_LTSPICE_PARSER::CreatePowerSymbol(), SCH_IO_LTSPICE_PARSER::CreateSCH_LABEL(), SCH_IO_LTSPICE_PARSER::CreateSCH_TEXT(), createSchText(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawTable(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), EDA_TEXT(), SCH_IO_GEDA::flushPendingComponent(), PCB_IO_KICAD_SEXPR::format(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::GetOrCreateConnectorPinSymbol(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::GetOrCreatePartTypeSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::getScaledLibPart(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), SCH_IO_EAGLE::loadFieldAttributes(), SCH_IO_EAGLE::loadFrame(), SCH_IO_EAGLE::loadInstance(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), SCH_IO_PADS::LoadSchematicFile(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbolInstances(), SCH_IO_KICAD_LEGACY::loadSheet(), SCH_IO_KICAD_LEGACY::loadSymbol(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), SCH_IO_EAGLE::loadTextAttributes(), DIALOG_LIB_SYMBOL_PROPERTIES::OnAddField(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_ALTIUM::ParseLabel(), SCH_IO_ALTIUM::ParseLibDesignator(), SCH_IO_ALTIUM::ParseLibParameter(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), BACK_ANNOTATE::processNetNameChange(), SCH_FIELD::SCH_FIELD(), PCB_TEXT::SetLibTextSize(), SCH_FIELD::SetSchTextSize(), SCH_TEXT::SetSchTextSize(), SCH_TEXTBOX::SetSchTextSize(), PCB_TEXT::SetTextSize(), PCB_TEXTBOX::SetTextSize(), PCAD2KICAD::SetTextSizeFromStrokeFontHeight(), PCAD2KICAD::SetTextSizeFromTrueTypeFontHeight(), FIELDS_GRID_TABLE::SetValue(), SCH_DRAWING_TOOLS::TwoClickPlace(), and DIALOG_FIELD_PROPERTIES::updateText().
|
virtual |
The TextThickness is that set by the user.
The EffectiveTextPenWidth also factors in bold text and thickness clamping.
Reimplemented in PCB_TEXT, and PCB_TEXTBOX.
Definition at line 279 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::ApplyFieldSettings(), CADSTAR_PCB_ARCHIVE_LOADER::applyTextCode(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), SCH_EDIT_TOOL::ChangeTextType(), ALTIUM_PCB::ConvertTexts6ToEdaTextSettings(), createSchText(), DS_DRAW_ITEM_TEXT::DS_DRAW_ITEM_TEXT(), EDA_TEXT_DESC::EDA_TEXT_DESC(), PCB_IO_KICAD_SEXPR::format(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SetAutoThickness(), PCB_TEXT::SetLibTextThickness(), PCB_TEXT::SetTextThickness(), and PCB_TEXTBOX::SetTextThickness().
|
virtual |
Definition at line 554 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), m_attributes, m_IuScale, TEXT_MAX_SIZE_MM, and TEXT_MIN_SIZE_MM.
Referenced by CADSTAR_SCH_ARCHIVE_LOADER::applyTextCodeIfExists(), EDA_TEXT_DESC::EDA_TEXT_DESC(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), FABMASTER::setupText(), PCB_FIELDS_GRID_TABLE::SetValue(), and DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog().
|
virtual |
Definition at line 583 of file eda_text.cpp.
References GetTextPos(), and Offset().
Referenced by SCH_SHEET_PIN::ConstrainOnEdge(), PCB_TEXT::Flip(), PCB_TEXT::Mirror(), SCH_DIRECTIVE_LABEL::MirrorHorizontally(), SCH_FIELD::MirrorHorizontally(), SCH_SHEET_PIN::MirrorHorizontally(), SCH_TEXT::MirrorHorizontally(), and SCH_SHEET_PIN::SetSide().
|
virtual |
Definition at line 589 of file eda_text.cpp.
References GetTextPos(), and Offset().
Referenced by SCH_SHEET_PIN::ConstrainOnEdge(), PCB_TEXT::Flip(), PCB_TEXT::Mirror(), SCH_DIRECTIVE_LABEL::MirrorVertically(), SCH_FIELD::MirrorVertically(), SCH_SHEET_PIN::MirrorVertically(), SCH_TEXT::MirrorVertically(), and SCH_SHEET_PIN::SetSide().
|
inline |
Definition at line 270 of file eda_text.h.
References m_unresolvedFontName.
Referenced by BOOST_AUTO_TEST_CASE(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), and SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT().
| void EDA_TEXT::SetupRenderCache | ( | const wxString & | aResolvedText, |
| const KIFONT::FONT * | aFont, | ||
| const EDA_ANGLE & | aAngle, | ||
| const VECTOR2I & | aOffset ) |
Definition at line 742 of file eda_text.cpp.
References IsMirrored(), and m_render_cache.
| void EDA_TEXT::SetVertJustify | ( | GR_TEXT_V_ALIGN_T | aType | ) |
Definition at line 412 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), and m_attributes.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), AdjustTextForSymbolOrientation(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::ApplyFieldSettings(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), SCH_SHEET::AutoplaceFields(), FOOTPRINT::AutoPositionFields(), SCH_IO_ALTIUM::CreateAliases(), SCH_DRAWING_TOOLS::createNewText(), createSchText(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), SCH_DRAWING_TOOLS::DrawShape(), EaglePcbTextToKiCadAlignment(), eagleToKicadAlignment(), EDA_TEXT_DESC::EDA_TEXT_DESC(), ALTIUM_PCB::HelperSetTextAlignmentAndPos(), ALTIUM_PCB::HelperSetTextboxAlignmentAndPos(), AUTOPLACER::justifyField(), PCB_TEXT::KeepUpright(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), SCH_IO_EAGLE::loadFieldAttributes(), PCB_IO_PADS::loadFootprints(), SCH_IO_EAGLE::loadFrame(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), SCH_IO_PADS::LoadSchematicFile(), SCH_IO_KICAD_LEGACY::loadSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), SCH_TEXT::MirrorHorizontally(), SCH_TEXT::MirrorVertically(), PCB_IO_EAGLE::orientFPText(), PCB_IO_EAGLE::packageText(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_EASYEDA_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), PCB_TEXTBOX::PCB_TEXTBOX(), SCH_GLOBALLABEL::SCH_GLOBALLABEL(), SCH_TEXTBOX::SCH_TEXTBOX(), SCH_FIELD::SetEffectiveVertJustify(), SCH_GLOBALLABEL::SetSpinStyle(), SCH_HIERLABEL::SetSpinStyle(), SCH_LABEL_BASE::SetSpinStyle(), SCH_IO_LTSPICE_PARSER::setTextJustification(), PCAD2KICAD::SetTextJustify(), FABMASTER::setupText(), FIELDS_GRID_TABLE::SetValue(), SimulateRenderTransform(), SCH_EDIT_TOOL::Swap(), swapFieldPositionsWithMatching(), DIALOG_FIELD_PROPERTIES::UpdateField(), and DIALOG_FIELD_PROPERTIES::UpdateField().
|
virtual |
Definition at line 381 of file eda_text.cpp.
References ClearRenderCache(), and m_visible.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), CADSTAR_SCH_ARCHIVE_LOADER::addNewFieldToSymbol(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), BACK_ANNOTATE::applyChangelist(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::ApplyFieldSettings(), SCH_EDITOR_CONTROL::AssignFootprints(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), ALLEGRO::BOARD_BUILDER::buildFootprint(), PADS_SCH::PADS_SCH_SYMBOL_BUILDER::BuildKiCadPowerSymbol(), MULTICHANNEL_TOOL::copyRuleAreaContents(), PADS_SCH::PADS_SCH_SCHEMATIC_BUILDER::CreateCustomFields(), SCH_IO_LTSPICE_PARSER::CreateFields(), DIPTRACE::PCB_PARSER::CreateFootprint(), PCB_BASE_FRAME::CreateNewFootprint(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_IO_LTSPICE_PARSER::CreatePowerSymbol(), SCH_IO_LTSPICE_PARSER::CreateSCH_LABEL(), SCH_IO_LTSPICE_PARSER::CreateSCH_TEXT(), DIPTRACE::SCH_PARSER::createSymbolInstance(), EDIT_TOOL::DeleteItems(), PCB_FIELD::Deserialize(), SCH_FIELD::Deserialize(), SYMBOL_EDITOR_EDIT_TOOL::DoDelete(), EDA_TEXT_DESC::EDA_TEXT_DESC(), PCB_IO_EASYEDAPRO_PARSER::fillFootprintModelInfo(), SCH_IO_GEDA::flushPendingComponent(), FOOTPRINT::FOOTPRINT(), PCB_IO_EASYEDA::FootprintLoad(), PCB_IO_EASYEDAPRO::FootprintLoad(), SCH_IO_EAGLE::getEagleSymbolFieldAttributes(), SCH_FIELD::ImportValues(), LIB_SYMBOL::LIB_SYMBOL(), CADSTAR_SCH_ARCHIVE_LOADER::loadBusses(), PCB_IO_EAGLE::loadElements(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadField(), FABMASTER::loadFootprints(), PCB_IO_PADS::loadFootprints(), SCH_IO_EAGLE::loadInstance(), SCH_IO_EAGLE::loadLibrary(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), SCH_IO_KICAD_LEGACY_LIB_CACHE::LoadPart(), PCB_IO_EAGLE::loadPlain(), SCH_IO_ALTIUM::LoadSchematicFile(), SCH_IO_PADS::LoadSchematicFile(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbolInstances(), SCH_IO_EAGLE::loadSymbol(), SCH_IO_KICAD_LEGACY::loadSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymbolFieldAttribute(), SCH_IO_HTTP_LIB::loadSymbolFromPart(), SCH_IO_DATABASE::loadSymbolFromRow(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymbolGateAndPartFields(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), PCB_IO_PADS::loadTestPoints(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadText(), SIM_MODEL::MigrateSimModel(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), DIALOG_LABEL_PROPERTIES::OnAddField(), DIALOG_LIB_SYMBOL_PROPERTIES::OnAddField(), DIALOG_SHEET_PROPERTIES::OnAddField(), DIALOG_SYMBOL_PROPERTIES::OnAddField(), PCB_IO_EASYEDAPRO_PARSER::ParseBoard(), SCH_IO_ALTIUM::ParseDesignator(), PCB_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), SCH_IO_ALTIUM::ParseFileName(), PCB_IO_KICAD_SEXPR_PARSER::parseFOOTPRINT_unchecked(), SCH_IO_ALTIUM::ParseLibParameter(), SCH_IO_ALTIUM::ParseParameter(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), SCH_IO_ALTIUM::ParsePortHelper(), SCH_IO_ALTIUM::ParsePowerPort(), SCH_IO_KICAD_SEXPR_PARSER::parseSchText(), SCH_IO_ALTIUM::ParseSheetName(), SCH_EASYEDA_PARSER::ParseSymbol(), SCH_EASYEDAPRO_PARSER::ParseSymbol(), SCH_EASYEDA_PARSER::ParseSymbolShapes(), PCB_IO_EASYEDA_PARSER::ParseToBoardItemContainer(), PCB_FIELD::PCB_FIELD(), SCH_EDITOR_CONTROL::processCmpToFootprintLinkFile(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), SPRINT_LAYOUT_PARSER::processPad(), DIALOG_CHANGE_SYMBOLS::processSymbols(), processTextItem(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveDcmInfoAsFields(), SCH_FIELD::SCH_FIELD(), SCH_IO_LTSPICE_PARSER::setTextJustification(), FIELDS_GRID_TABLE::SetValue(), FIELDS_GRID_TABLE::SetValueAsBool(), PCB_FIELDS_GRID_TABLE::SetValueAsBool(), DIALOG_LIB_SYMBOL_PROPERTIES::TransferDataToWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataToWindow(), SCH_SHEET_PATH::UpdateAllScreenReferences(), BOARD_NETLIST_UPDATER::updateFootprintParameters(), and DIALOG_FIELD_PROPERTIES::updateText().
| double EDA_TEXT::Similarity | ( | const EDA_TEXT & | aOther | ) | const |
Definition at line 1313 of file eda_text.cpp.
References EDA_TEXT(), Levenshtein(), m_attributes, and m_pos.
Referenced by PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), PCB_TEXT::Similarity(), PCB_TEXTBOX::Similarity(), SCH_FIELD::Similarity(), SCH_TEXT::Similarity(), and SCH_TEXTBOX::Similarity().
| void EDA_TEXT::SwapAttributes | ( | EDA_TEXT & | aTradingPartner | ) |
Swap the text attributes of the two involved instances.
Definition at line 448 of file eda_text.cpp.
References ClearBoundingBoxCache(), ClearRenderCache(), EDA_TEXT(), m_attributes, and m_pos.
Referenced by SCH_FIELD::swapData(), SCH_TEXT::swapData(), and SCH_TEXTBOX::swapData().
| void EDA_TEXT::SwapText | ( | EDA_TEXT & | aTradingPartner | ) |
Definition at line 440 of file eda_text.cpp.
References cacheShownText(), EDA_TEXT(), and m_text.
Referenced by SCH_FIELD::swapData(), SCH_TEXT::swapData(), and SCH_TEXTBOX::swapData().
|
virtual |
Test if object bounding box is contained within or intersects aRect.
| aRect | Rect to test against. |
| aContains | Test for containment instead of intersection if true. |
| aAccuracy | Amount to inflate the bounding box. |
Reimplemented in PCB_TEXT.
Definition at line 910 of file eda_text.cpp.
References BOX2< Vec >::Contains(), GetDrawRotation(), BOX2< Vec >::GetInflated(), GetTextBox(), and BOX2< Vec >::Intersects().
|
virtual |
Test if aPoint is within the bounds of this object.
Reimplemented in PCB_TEXT.
Definition at line 902 of file eda_text.cpp.
References BOX2< Vec >::Contains(), GetDrawPos(), GetDrawRotation(), BOX2< Vec >::GetInflated(), GetRotated(), GetTextBox(), and location.
Referenced by DS_DRAW_ITEM_TEXT::HitTest(), DS_DRAW_ITEM_TEXT::HitTest(), and PCB_TEXT::TextHitTest().
|
static |
Check if aURL is a valid hyperlink.
| aURL | String to validate |
Definition at line 1258 of file eda_text.cpp.
References IsGotoPageHref().
Referenced by SCH_IO_KICAD_SEXPR_PARSER::parseEDA_TEXT(), and DIALOG_TEXT_PROPERTIES::TransferDataFromWindow().
|
mutableprotected |
Definition at line 478 of file eda_text.h.
Referenced by SCH_TEXT::DoHypertextAction(), SCH_TEXTBOX::DoHypertextAction(), SCH_TEXT::HasHoveredHypertext(), SCH_TEXTBOX::HasHoveredHypertext(), and SetActiveUrl().
|
private |
Definition at line 504 of file eda_text.h.
Referenced by Compare(), EDA_TEXT(), GetAttributes(), GetFont(), GetHorizJustify(), GetLineSpacing(), GetTextAngle(), GetTextAngleDegrees(), GetTextColor(), GetTextSize(), GetTextThickness(), GetVertJustify(), IsBold(), IsItalic(), IsKeepUpright(), IsMirrored(), IsMultilineAllowed(), operator=(), ResolveFont(), SetAttributes(), SetAttributes(), SetBold(), SetBoldFlag(), SetFont(), SetHorizJustify(), SetItalic(), SetItalicFlag(), SetKeepUpright(), SetLineSpacing(), SetMirrored(), SetMultilineAllowed(), SetTextAngle(), SetTextColor(), SetTextHeight(), SetTextSize(), SetTextThickness(), SetTextWidth(), SetVertJustify(), Similarity(), and SwapAttributes().
|
mutableprivate |
Definition at line 501 of file eda_text.h.
Referenced by ClearBoundingBoxCache(), EDA_TEXT(), GetTextBox(), and operator=().
|
mutableprivate |
Definition at line 502 of file eda_text.h.
Referenced by ClearBoundingBoxCache(), EDA_TEXT(), GetTextBox(), and operator=().
|
protected |
A hyperlink URL.
If empty, this text object is not a hyperlink.
Definition at line 476 of file eda_text.h.
Referenced by SCH_TEXT::DoHypertextAction(), SCH_TEXTBOX::DoHypertextAction(), GetHyperlink(), HasHyperlink(), RemoveHyperlink(), and SetHyperlink().
|
private |
Definition at line 491 of file eda_text.h.
Referenced by EDA_TEXT(), EDA_TEXT(), Format(), SetTextHeight(), SetTextSize(), and SetTextWidth().
|
private |
Definition at line 506 of file eda_text.h.
Referenced by Compare(), EDA_TEXT(), GetTextPos(), Offset(), operator=(), SetAttributes(), Similarity(), and SwapAttributes().
|
mutableprivate |
Definition at line 493 of file eda_text.h.
Referenced by AddRenderCacheGlyph(), ClearRenderCache(), EDA_TEXT(), GetRenderCache(), Offset(), operator=(), ResolveFont(), and SetupRenderCache().
|
private |
Definition at line 482 of file eda_text.h.
Referenced by cacheShownText(), EDA_TEXT(), GetShownText(), and operator=().
|
private |
Definition at line 483 of file eda_text.h.
Referenced by cacheShownText(), EDA_TEXT(), HasTextVars(), and operator=().
|
private |
Definition at line 481 of file eda_text.h.
Referenced by cacheShownText(), Compare(), CopyText(), EDA_TEXT(), EDA_TEXT(), Empty(), GetText(), operator=(), Replace(), SetText(), and SwapText().
|
private |
Definition at line 489 of file eda_text.h.
Referenced by cacheShownText(), EDA_TEXT(), GetTextVarReferences(), and operator=().
|
private |
Definition at line 505 of file eda_text.h.
Referenced by EDA_TEXT(), operator=(), ResolveFont(), and SetUnresolvedFontName().
|
private |
Definition at line 507 of file eda_text.h.
Referenced by EDA_TEXT(), EDA_TEXT(), IsVisible(), operator=(), and SetVisible().