22#ifndef SCH_IO_KICAD_SEXPR_LIB_CACHE_H_
23#define SCH_IO_KICAD_SEXPR_LIB_CACHE_H_
48 void Save(
const std::optional<bool>& aOpt = std::nullopt )
override;
55 const wxString& aLibName = wxEmptyString,
bool aIncludeData =
true );
72 int& aNextFreeFieldId );
A LINE_READER that reads from an open file.
Define a library symbol object.
An abstract class from which implementation specific LINE_READERs may be derived to read single lines...
Instances are attached to a symbol or sheet and provide a place for the symbol's value,...
A cache assistant for the KiCad s-expression symbol libraries.
int m_fileFormatVersionAtLoad
static void saveSymbolDrawItem(SCH_ITEM *aItem, OUTPUTFORMATTER &aFormatter)
virtual ~SCH_IO_KICAD_SEXPR_LIB_CACHE()
static void SaveSymbol(LIB_SYMBOL *aSymbol, OUTPUTFORMATTER &aFormatter, const wxString &aLibName=wxEmptyString, bool aIncludeData=true)
friend SCH_IO_KICAD_SEXPR
static void saveDcmInfoAsFields(LIB_SYMBOL *aSymbol, OUTPUTFORMATTER &aFormatter, int &aNextFreeFieldId)
static void saveTextBox(SCH_TEXTBOX *aTextBox, OUTPUTFORMATTER &aFormatter)
static void saveField(SCH_FIELD *aField, OUTPUTFORMATTER &aFormatter)
void DeleteSymbol(const wxString &aName) override
static void savePin(SCH_PIN *aPin, OUTPUTFORMATTER &aFormatter)
static void saveText(SCH_TEXT *aText, OUTPUTFORMATTER &aFormatter)
int GetFileFormatVersionAtLoad() const
void SetFileFormatVersionAtLoad(int aVersion)
void Save(const std::optional< bool > &aOpt=std::nullopt) override
Save the entire library to file m_libFileName;.
A SCH_IO derivation for loading schematic files using the new s-expression file format.
A base cache assistant implementation for the symbol library portion of the SCH_IO API.
Base class for any item which can be embedded within the SCHEMATIC container class,...