|
KiCad PCB EDA Suite
|
#include <sch_io/kicad_sexpr/writers/sch_writer_v9.h>#include <algorithm>#include <wx/mstream.h>#include <base_units.h>#include <bitmap_base.h>#include <build_version.h>#include <schematic_lexer.h>#include <ctl_flags.h>#include <font/font.h>#include <io/kicad/kicad_io_utils.h>#include <io/kicad/legacy_format.h>#include <locale_io.h>#include <schematic.h>#include <sch_bitmap.h>#include <sch_bus_entry.h>#include <sch_edit_frame.h>#include <sch_junction.h>#include <sch_line.h>#include <sch_no_connect.h>#include <sch_pin.h>#include <sch_rule_area.h>#include <sch_screen.h>#include <sch_shape.h>#include <sch_sheet.h>#include <sch_sheet_pin.h>#include <sch_symbol.h>#include <sch_table.h>#include <sch_tablecell.h>#include <sch_text.h>#include <sch_textbox.h>#include <string_utils.h>#include <richio.h>Go to the source code of this file.
Functions | |
| static void | formatArc (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aArc, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatCircle (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aCircle, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatRect (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aRect, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatBezier (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aBezier, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatPoly (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aPolyLine, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatFill (OUTPUTFORMATTER *aFormatter, FILL_T aFillMode, const COLOR4D &aFillColor) |
| static bool | isDefaultFormattingV9 (const EDA_TEXT &aText) |
| static void | formatEdaTextV9 (OUTPUTFORMATTER *aFormatter, const EDA_TEXT &aText, int aControlBits) |
| static const char * | getPinElectricalTypeToken (ELECTRICAL_PINTYPE aType) |
| static const char * | getPinShapeToken (GRAPHIC_PINSHAPE aShape) |
| static EDA_ANGLE | getPinAngle (PIN_ORIENTATION aOrientation) |
| static const char * | getSheetPinShapeToken (LABEL_FLAG_SHAPE aShape) |
| static EDA_ANGLE | getSheetPinAngle (SHEET_SIDE aSide) |
| static const char * | getTextTypeToken (KICAD_T aType) |
| static std::string | formatIU (const int &aValue) |
| static std::string | formatIU (const VECTOR2I &aPt, bool aInvertY) |
| static void | libSaveSymbol (LIB_SYMBOL *aSymbol, OUTPUTFORMATTER &aFormatter, const wxString &aLibName=wxEmptyString, bool aIncludeData=true) |
| static void | libSaveSymbolDrawItem (SCH_ITEM *aItem, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveField (SCH_FIELD *aField, OUTPUTFORMATTER &aFormatter) |
| static void | libSavePin (SCH_PIN *aPin, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveText (SCH_TEXT *aText, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveTextBox (SCH_TEXTBOX *aTextBox, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveDcmInfoAsFields (LIB_SYMBOL *aSymbol, OUTPUTFORMATTER &aFormatter) |
| static KIID | effectiveRootUuid (const SCHEMATIC &aSchematic) |
Variables | |
| static const char * | emptyString = "" |
Definition at line 860 of file sch_writer_v9.cpp.
References SCHEMATIC::GetTopLevelSheets(), EDA_ITEM::m_Uuid, niluuid, and SCHEMATIC::Root().
Referenced by SCH_WRITER_V9::saveSheet(), and SCH_WRITER_V9::saveSymbol().
|
static |
Definition at line 255 of file sch_writer_v9.cpp.
References KIID::AsString(), formatFill(), formatIU(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetArcMid(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), schIUScale, and TO_UTF8.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 304 of file sch_writer_v9.cpp.
References KIID::AsString(), formatFill(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetBezierC1(), EDA_SHAPE::GetBezierC2(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), schIUScale, and TO_UTF8.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 272 of file sch_writer_v9.cpp.
References KIID::AsString(), formatFill(), formatIU(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetRadius(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), schIUScale, and TO_UTF8.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 113 of file sch_writer_v9.cpp.
References KICAD_FORMAT::LEGACY::FormatTextV9(), and schIUScale.
Referenced by libSaveField(), libSaveText(), libSaveTextBox(), SCH_WRITER_V9::saveField(), SCH_WRITER_V9::saveSheet(), SCH_WRITER_V9::saveText(), and SCH_WRITER_V9::saveTextBox().
|
static |
Definition at line 77 of file sch_writer_v9.cpp.
References KIGFX::COLOR4D::a, KIGFX::COLOR4D::b, FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, FormatDouble2Str(), KIGFX::COLOR4D::g, KiROUND(), NO_FILL, OUTPUTFORMATTER::Print(), and KIGFX::COLOR4D::r.
Referenced by formatArc(), formatBezier(), formatCircle(), formatPoly(), formatRect(), and libSaveTextBox().
|
static |
Definition at line 242 of file sch_writer_v9.cpp.
References EDA_UNIT_UTILS::FormatInternalUnits(), and schIUScale.
Referenced by formatArc(), formatBezier(), formatCircle(), formatPoly(), and formatRect().
|
static |
Definition at line 248 of file sch_writer_v9.cpp.
References EDA_UNIT_UTILS::FormatInternalUnits(), schIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.
|
static |
Definition at line 328 of file sch_writer_v9.cpp.
References KIID::AsString(), SHAPE_LINE_CHAIN::CPoint(), SHAPE_LINE_CHAIN::CPoints(), formatFill(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetPolyShape(), SHAPE_LINE_CHAIN::IsClosed(), niluuid, SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), OUTPUTFORMATTER::Print(), schIUScale, and TO_UTF8.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 289 of file sch_writer_v9.cpp.
References KIID::AsString(), formatFill(), formatIU(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), schIUScale, and TO_UTF8.
Referenced by libSaveSymbolDrawItem().
|
static |
|
static |
Definition at line 119 of file sch_writer_v9.cpp.
References emptyString, PT_BIDI, PT_INPUT, PT_NC, PT_NIC, PT_OPENCOLLECTOR, PT_OPENEMITTER, PT_OUTPUT, PT_PASSIVE, PT_POWER_IN, PT_POWER_OUT, PT_TRISTATE, and PT_UNSPECIFIED.
Referenced by libSavePin().
|
static |
Definition at line 154 of file sch_writer_v9.cpp.
References CLOCK, CLOCK_LOW, emptyString, FALLING_EDGE_CLOCK, INPUT_LOW, INVERTED, INVERTED_CLOCK, LINE, NONLOGIC, and OUTPUT_LOW.
|
static |
|
static |
Definition at line 196 of file sch_writer_v9.cpp.
References F_DIAMOND, F_DOT, F_RECTANGLE, F_ROUND, L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, and L_UNSPECIFIED.
|
static |
Definition at line 228 of file sch_writer_v9.cpp.
References SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, and SCH_TEXT_T.
|
static |
Definition at line 105 of file sch_writer_v9.cpp.
References EDA_TEXT::GetFontName(), EDA_TEXT::GetHorizJustify(), EDA_TEXT::GetTextThickness(), EDA_TEXT::GetVertJustify(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, EDA_TEXT::IsBold(), EDA_TEXT::IsItalic(), EDA_TEXT::IsMirrored(), EDA_TEXT::IsMultilineAllowed(), and EDA_TEXT::IsVisible().
Referenced by SCH_WRITER_V9::saveField().
|
static |
Definition at line 525 of file sch_writer_v9.cpp.
References CTX_NO_SPACE, EscapeString(), filter, LIB_SYMBOL::GetFPFilters(), LIB_SYMBOL::GetRawKeyWords(), libSaveField(), SCH_FIELD::SetText(), EDA_TEXT::SetVisible(), and USER.
Referenced by libSaveSymbol().
|
static |
Definition at line 605 of file sch_writer_v9.cpp.
References EDA_ANGLE::AsDegrees(), SCH_FIELD::CanAutoplace(), formatEdaTextV9(), EDA_UNIT_UTILS::FormatInternalUnits(), SCH_FIELD::GetName(), SCH_FIELD::GetPosition(), SCH_FIELD::GetText(), EDA_TEXT::GetTextAngle(), SCH_FIELD::GetUntranslatedName(), SCH_FIELD::IsMandatory(), SCH_FIELD::IsNameShown(), SCH_ITEM::IsPrivate(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_FIELD_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveDcmInfoAsFields(), and libSaveSymbol().
|
static |
Definition at line 631 of file sch_writer_v9.cpp.
References EDA_ITEM::ClearFlags(), EDA_UNIT_UTILS::FormatAngle(), KICAD_FORMAT::LEGACY::FormatBool(), EDA_UNIT_UTILS::FormatInternalUnits(), SCH_PIN::GetAlternates(), SCH_PIN::GetLength(), SCH_PIN::GetName(), SCH_PIN::GetNameTextSize(), SCH_PIN::GetNumber(), SCH_PIN::GetNumberTextSize(), SCH_PIN::GetOrientation(), getPinAngle(), getPinElectricalTypeToken(), getPinElectricalTypeToken(), getPinShapeToken(), SCH_PIN::GetPosition(), SCH_PIN::GetShape(), SCH_PIN::GetType(), IS_CHANGED, SCH_PIN::IsVisible(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_PIN_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 375 of file sch_writer_v9.cpp.
References EMBEDDED_FILES::ClearEmbeddedFonts(), DEFAULT_PIN_NAME_OFFSET, EMBEDDED_FILES::EmbeddedFileMap(), LIB_SYMBOL::EmbedFonts(), KICAD_FORMAT::LEGACY::FormatBool(), KICAD_FORMAT::LEGACY::FormatEmbeddedFilesV9(), EDA_UNIT_UTILS::FormatInternalUnits(), EMBEDDED_FILES::GetAreFontsEmbedded(), LIB_SYMBOL::GetEmbeddedFiles(), SYMBOL::GetExcludedFromBoard(), SYMBOL::GetExcludedFromBOM(), SYMBOL::GetExcludedFromSim(), LIB_SYMBOL::GetFields(), LIB_SYMBOL::GetLibId(), LIB_ID::GetLibItemName(), LIB_SYMBOL::GetParent(), SYMBOL::GetPinNameOffset(), SYMBOL::GetShowPinNames(), SYMBOL::GetShowPinNumbers(), LIB_SYMBOL::GetUnitDisplayNames(), LIB_SYMBOL::GetUnitDrawItems(), LIB_SYMBOL::IsPower(), LIB_SYMBOL::IsRoot(), libSaveDcmInfoAsFields(), libSaveField(), libSaveSymbolDrawItem(), locked, name, LIB_ID::Parse(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotes(), OUTPUTFORMATTER::Quotew(), schIUScale, LIB_SYMBOL::UnitsLocked(), USER, and UTF8::wx_str().
|
static |
Definition at line 562 of file sch_writer_v9.cpp.
References ARC, BEZIER, CIRCLE, formatArc(), formatBezier(), formatCircle(), formatPoly(), formatRect(), SCH_ITEM::GetClass(), EDA_SHAPE::GetFillColor(), EDA_SHAPE::GetFillMode(), EDA_SHAPE::GetShape(), SCH_SHAPE::GetStroke(), SCH_ITEM::IsPrivate(), libSavePin(), libSaveText(), libSaveTextBox(), POLY, RECTANGLE, SCH_PIN_T, SCH_SHAPE_T, SCH_TEXT_T, SCH_TEXTBOX_T, EDA_SHAPE::SHAPE_T_asString(), EDA_ITEM::Type(), and UNIMPLEMENTED_FOR.
Referenced by libSaveSymbol().
|
static |
Definition at line 667 of file sch_writer_v9.cpp.
References EDA_ANGLE::AsTenthsOfADegree(), formatEdaTextV9(), EDA_UNIT_UTILS::FormatInternalUnits(), SCH_TEXT::GetPosition(), EDA_TEXT::GetText(), EDA_TEXT::GetTextAngle(), SCH_ITEM::IsPrivate(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_TEXT_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 682 of file sch_writer_v9.cpp.
References EDA_UNIT_UTILS::FormatAngle(), formatEdaTextV9(), formatFill(), EDA_UNIT_UTILS::FormatInternalUnits(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetFillColor(), EDA_SHAPE::GetFillMode(), SCH_TEXTBOX::GetMarginBottom(), SCH_TEXTBOX::GetMarginLeft(), SCH_TEXTBOX::GetMarginRight(), SCH_TEXTBOX::GetMarginTop(), EDA_SHAPE::GetStart(), SCH_SHAPE::GetStroke(), EDA_TEXT::GetText(), EDA_TEXT::GetTextAngle(), SCH_ITEM::IsPrivate(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_TEXTBOX_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 61 of file sch_writer_v9.cpp.