Finale PDK Framework 0.77
Power Up Your Finale Music Software
|
Collection class for FCString class objects. More...
#include <ff_basecollection.h>
Public Member Functions | |
FCStrings () | |
The constructor. | |
bool | AddCopy (const FCString *pString) |
Adds a copy of the FCString object to the string collection. | |
const char * | ClassName () const override |
Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. | |
FCString * | GetItemAt (int index) const |
Overridden GetItemAt() method. | |
void | InsertStringAt (const FCString *pNewString, int index) |
Inserts FCString at given index. | |
bool | ContainEnigmaFont () |
Returns true if any of the strings in the collection is an Enigma font command. | |
FCSettingsPairs * | CreateSettingsPairs () |
Create settings pairs based on the strings in the collection. The created collection must be deleted after use. | |
FCString * | CreateString (const char *pszSeparator=NULL) |
Creates a FCString object by concatenating all strings in the collection into one. | |
FCString * | CreateRowsString (bool bNewLineAtEnd) |
Creates a FCString object based on the string collection "rows". It's created by concatenating all strings in the collection into one with new lines between. | |
FCString * | Find (FCString *pFindString) |
Finds the exact string content in the collection. | |
FCString * | FindNocase (FCString *pFindString) |
Finds the string contents in the collection, in a case-insensitive search. | |
void | CopyFrom (FCStrings *pSourceStrings) |
Recreates a string collection. Any existing strings in the collection are cleared. NULL entries in the string table are also supported. | |
void | CopyFromStringTable (const std::vector< std::string > &strings) |
Replaces the contents of the collection from the input vector of std::string. | |
void | TrimWhitespaceAll () |
Trims leading and trailing whitespace in all the collection's strings. | |
void | ClearEmptyStrings () |
Removes all empty strings and all NULL pointers from the collection. The objects are disposed from the heap. | |
void | SortAlphabetical () |
Makes a "non-intelligent" simple alphabetical sort of the string collection. | |
void | ParseEnigmaFontInfo (int index, FCFontInfo *pFontInfo) |
Browses the font info available in the strings from the start of the file up until (but not including) the index position. | |
bool | LoadSymbolFonts () |
Loads the user's macsymbolfonts.txt file into the string collection. The string collection will be sorted in the same order that the lines appear in the file. | |
bool | LoadFolderFiles (FCString *pFolderString) |
Gets all files names in a specific folder. | |
bool | LoadSubfolders (FCString *pFolderString) |
Gets all subfolder names in a specific folder. | |
bool | LoadSystemFontNames () |
Gets all the font names on the system. | |
Public Member Functions inherited from __FCCollection | |
__FCCollection () | |
The constructor. | |
virtual | ~__FCCollection () |
The virtual destructor, which deallocates the array and also all its elements. | |
int | GetCount () const |
Returns the number of elements of the collection. | |
void | Add (__FCBase *pNewItem) |
Adds an element to the end of the collection. | |
bool | UniqueAdd (__FCBase *pNewItem) |
Adds an element to the end of the collection, but only if it doesn't exist in the collection before. | |
void | InsertItemAt (__FCBase *pNewItem, int index) |
Inserts an item into the collection. | |
bool | ElementExists (__FCBase *pQueryItem) |
Returns true if the element is found in the collection, otherwise false. | |
void | ClearAll () |
Destroys all the objects in the collection and empties the collection. | |
void | DetachAll () |
Removes all the objects from the collection, without freeing/destroying the objects. | |
__FCBase * | GetItemAt (int index) const |
Returns the object at the index position. Index is 0-based. | |
__FCBase * | GetLastItem () const |
Returns the last item in the collection. | |
__FCBase * | operator[] (int index) const |
Identical to the GetItemAt method. | |
int | GetIndexOf (__FCBase *pObject) const |
Returns the 0-based order index for the object within the collection. | |
__FCBase * | DetachItemAt (int index) |
Removes the object at the index position. Index is 0-based. | |
bool | ClearItemAt (int index) |
Deletes the object at the index position and disposes the object. Index is 0-based. | |
int | ToEndFrom (int index, FCIteratorHandler *pIterator) |
Processes one element after another and iterates from one specific index to the end of the collection. | |
int | ForEach (FCIteratorHandler *pIterator) override |
Processes all elements in the collection (starting with item 0), or until the iterator Iterate() returns false. | |
virtual int | ForEachIndex (FCIteratorHandler *pIterator) |
Same as ForEach, but the IterateIndex callback of the iterator handler is used instead. | |
__FCBase * | FindFirst (FCIteratorHandler *pIterator) override |
Process elements until a match is found. | |
__FCBase * | FindUserData (void *data_to_find) |
Returns the first element in the collection that has the indicated userdata. | |
bool | Sort (FCIteratorHandler *pIterator) |
Sorts the elements of. | |
bool | Swap (int index1, int index2) |
Swaps to items in the collection. | |
bool | IsEmpty () const |
Returns true if the collection contains no elements. | |
int | MoveFrom (__FCCollection *pOtherCollection, bool unique=false) |
Moves elements from another collection into this collection. The other will be empty after the operation. | |
bool | IsIdentical (const __FCBase *pCompareObject) const override |
Returns true if two collections are considered to be identical. | |
void | DebugDump () override |
Outputs the class data/information for debugging purposes. | |
Public Member Functions inherited from __FCIteratorBase | |
__FCIteratorBase () | |
The constructor. | |
Public Member Functions inherited from __FCBase | |
virtual const PDKFRAMEWORK_CLASSID | GetClassID () const |
Returns the internal class ID for the PDK Framework class. This is implemented mostly because Lua has problems to resolve the true classes of inherited objects. | |
virtual | ~__FCBase () |
Virtual destructor, so all inherited classes get the virtual destructor. | |
void | DebugMsgInt (const char *pszPrefixText, int i) |
Creates a simple Message Box for debug purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. | |
void | DebugMsgHex (const char *pszPrefixText, int i) |
Creates a simple Message Box for debug purposes. The text appears with the extra digit (as a hexadecimal number) appearing afterwards. | |
void | DebugMsgString (const char *pszPrefixText, const char *thestring) |
Creates a simple Message Box for debug purposes. The text appears with the extra string appearing afterwards. | |
void | DebugMsg (const char *pszMsg) |
Creates a simple Message Box for debug purposes with just one text string. | |
void | DebugOutMenuInfo (FCUI *pUI, int menuixd_horiz, int menuixd_vert) const |
Outputs the menu command info for debugging purposes. | |
int | DebugOutFormat (const char *fmt,...) |
Outputs debug text using C style "printf" syntax. | |
virtual void | DebugDataDump () |
Outputs a memory dump of the data block in the object for debugging purposes. | |
virtual void | DebugDataByteArrayDump () |
Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. | |
void | Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state) |
Sets a 16 bit flag. | |
void | Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state) |
Sets/resets a 32 bit flag, by using a bit mask. | |
bool | GetBitFlag (FLAG_32 flag, FLAG_32 flagbits) const |
Gets a state from flag bits. Returns true if any bit in the mask is set. | |
int | GetBitCount (FLAG_32 flag) |
Returns the total number of set bits in a 32-bit unsigned int. | |
void | SetSpecific32Bit (FLAG_32 *flag, int bitnumber, bool state) |
Sets/resets a single bit in a 32 bit flag, by specifying one specific bit. | |
void | SetUserData (void *pData) |
Sets the user data attached to the instance of an object. | |
void | SetUserData2 (void *pData) |
Sets the additional user data attached to the instance of an object. | |
void * | GetUserData () const |
Gets the user data attached to the instance of an object. | |
void * | GetUserData2 () const |
Gets the additional user data attached to the instance of an object. | |
void | StoreXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue) |
Helper function to store FCString objects in the XML file. | |
void | StoreXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int value) |
Helper function to store integer objects in the XML file. | |
void | StoreXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool value) |
Helper function to store boolean objects in the XML file. | |
void | StoreXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue) |
Helper function to store FCString objects in the XML file, as an attribute to a node. | |
void | StoreXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int value) |
Helper function to store integer objects in the XML file, as an attribute to a node. | |
void | StoreXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool value) |
Helper function to store boolean objects in the XML file, as an attribute to a node. | |
void | StoreXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float value) |
Helper function to store floating point objects in the XML file, as an attribute to a node. | |
virtual void | StoreToXML (tinyxml2::XMLElement *pParentNode) |
Virtual method that is used to store an object's data. | |
bool | ReadXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue) |
Helper method to read FCString objects from the XML file. | |
bool | ReadXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int *pValue) |
Helper method to read integer objects from the XML file. | |
bool | ReadXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool *pValue) |
Helper method to read boolean objects from the XML file. | |
bool | ReadXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue) |
Helper method to read FCString objects from the XML file, as an attribute to a node. | |
bool | ReadXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int *pValue) |
Helper method to read integer objects from the XML file, as an attribute to a node. | |
bool | ReadXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool *pValue) |
Helper method to read boolean objects from the XML file, as an attribute to a node. | |
bool | ReadXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float *pValue) |
Helper method to read floating point objects from the XML file, as an attribute to a node. | |
virtual bool | ReadFromXML (tinyxml2::XMLElement *pParentNode) |
Virtual method that is used to read object data. | |
Additional Inherited Members | |
Public Types inherited from __FCBase | |
enum | PDKFRAMEWORK_CLASSID { FCID_UNKNOWN = 0 , FCID_ACCIDENTALMOD , FCID_ACTIVELYRIC , FCID_ALLOTMENT , FCID_ARTICULATION , FCID_ARTICULATIONDEF , FCID_BACKWARDREPEAT , FCID_BASELINE , FCID_BEAMMOD , FCID_BEATCHARTELEMENT , FCID_BOOKMARK , FCID_BROKENBEAMMOD , FCID_CATEGORYDEF , FCID_CELLCLEFCHANGE , FCID_CELLFRAMEHOLD , FCID_CELLGRAPHIC , FCID_CELLTEXT , FCID_CENTERSMARTSHAPE , FCID_CHORD , FCID_CHORDPREFS , FCID_CHORDSUFFIXELEMENT , FCID_CHORUSSYLLABLE , FCID_CLEFDEF , FCID_COMPOSITETIMESIGBOTTOMELEMENT , FCID_COMPOSITETIMESIGTOPELEMENT , FCID_CROSSSTAFFMOD , FCID_CUSTOMSMARTLINEDEF , FCID_CUSTOMSTEMMOD , FCID_DISTANCEPREFS , FCID_DOTMOD , FCID_ENCLOSURE , FCID_ENDINGREPEAT , FCID_ENIGMATEXTSTYLE , FCID_ENTRYALTERMOD , FCID_EXECUTABLESHAPEDEF , FCID_EXPRESSION , FCID_FONTINFO , FCID_FONTPREFS , FCID_FREEZESYSTEM , FCID_FRETBOARDSTYLEDEF , FCID_FRETBOARDSTYLEDEFS , FCID_FRETBOARDGROUPDEF , FCID_FRETBOARDGROUPDEFS , FCID_FRETINSTRUMENTDEF , FCID_GENERALPREFS , FCID_GRIDSGUIDESPREFS , FCID_GROUP , FCID_GROUPNAMEPOSITIONPREFS , FCID_HUMANPLAYBACKPREFS , FCID_INDEPENDENTCELLDETAIL , FCID_INSTRUMENTDEF , FCID_INSTRUMENTPLAYBACKDATA , FCID_KEYMODEDEF , FCID_KEYSIGNATURE , FCID_LAYERPREFS , FCID_LYRICSBASELINE , FCID_LYRICSPREFS , FCID_MEASURE , FCID_MEASURENUMBERREGION , FCID_METATOOLASSIGNMENT , FCID_MIDIEXPRESSION , FCID_MISCDOCPREFS , FCID_MULTIMEASUREREST , FCID_MULTIMEASURERESTPREFS , FCID_MULTISTAFFINSTRUMENT , FCID_MULTISTAFFINSTRUMENTS , FCID_MUSICCHARACTERPREFS , FCID_MUSICSPACINGPREFS , FCID_NUMBER , FCID_NOTEHEADMOD , FCID_OTHERINCI , FCID_PERCUSSIONLAYOUTNOTE , FCID_PERCUSSIONSTAFF , FCID_PERFORMANCEMOD , FCID_PAGE , FCID_PAGEFORMATPREFS , FCID_PAGEGRAPHIC , FCID_PAGETEXT , FCID_PART , FCID_PARTEXTRACTPREFS , FCID_PARTSCOPEPREFS , FCID_PARTSTAFFVOICING , FCID_PERCUSSIONNOTEMOD , FCID_PIANOBRACEPREFS , FCID_PLAYBACKPREFS , FCID_RAWTEXT , FCID_REPEATPREFS , FCID_SECONDARYBEAMBREAKMOD , FCID_BEAMEXTENSIONMOD , FCID_SECTIONSYLLABLE , FCID_SEPARATEMEASURENUMBER , FCID_SEPARATEPLACEMENT , FCID_SHAPEDEF , FCID_SHAPEEXPRESSIONDEF , FCID_SLURCONTOURPREFS , FCID_SIZEPREFS , FCID_SMARTSHAPE , FCID_SMARTSHAPEENTRYMARK , FCID_SMARTSHAPEMEASUREMARK , FCID_SMARTSHAPEPREFS , FCID_STAFF , FCID_STAFFLIST , FCID_STAFFNAMEPOSITION , FCID_STAFFNAMEPOSITIONPREFS , FCID_STAFFSTYLEASSIGN , FCID_STAFFSTYLEDEF , FCID_STAFFSYSTEM , FCID_STEMCONNECTIONTABLE , FCID_STEMMOD , FCID_STRING , FCID_SYLLABLEENTRYMOD , FCID_SYSTEMSTAFF , FCID_TABLATURENOTEMOD , FCID_TEMPOELEMENT , FCID_TEXTBLOCK , FCID_TEXTEXPRESSIONDEF , FCID_TEXTREPEAT , FCID_TEXTREPEATDEF , FCID_TIEMOD , FCID_TIEPREFS , FCID_TIECONTOURPREFS , FCID_TIEPLACEMENTPREFS , FCID_TIMESIGNATURE , FCID_TUPLET , FCID_TUPLETPREFS , FCID_VERSESYLLABLE } |
Constants for the GetClassID method. More... | |
enum | MEASUREMENTUNITS { MEASUREMENTUNIT_DEFAULT = UNIT_DEFAULT , MEASUREMENTUNIT_EVPUS = UNIT_EVPUS , MEASUREMENTUNIT_INCHES = UNIT_INCHES , MEASUREMENTUNIT_CENTIMETERS = UNIT_CENTS , MEASUREMENTUNIT_POINTS = UNIT_POINTS , MEASUREMENTUNIT_PICAS = UNIT_PICAS , MEASUREMENTUNIT_SPACES = UNIT_SPACES , MEASUREMENTUNIT_MILLIMETERS = 100 } |
Constants for Finale's standard measurement units. More... | |
Static Public Member Functions inherited from __FCBase | |
static void | DebugOutPtr (const char *pszPrefixText, void *ptr) |
Static method that outputs a line for debugging purposes. The prefix text appears with the extra ptr (in hexadeximal representation) appearing afterwards. | |
static void | DebugOutInt (const char *pszPrefixText, int i) |
Static method that outputs a line for debugging purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. | |
static void | DebugOutFloat (const char *pszPrefixText, double f) |
Static method that outputs a line for debugging purposes. The text appears with the extra float value appearing afterwards. | |
static void | DebugOutTag (const char *pszPrefixText, EXTAG extag) |
Static method that outputs a line for debugging purposes. The text appears with the EXTAG (in text) appearing afterwards. | |
static void | DebugOutHex (const char *pszPrefixText, int i) |
Static method that outputs a line for debugging purposes. The text appears with the extra digit (in hexadecimal presentation) appearing afterwards. | |
static void | DebugOutBin (const char *pszPrefixText, int i) |
Static method that outputs a line for debugging purposes. The text appears with the extra digit (in binary presentation) appearing afterwards. | |
static void | DebugOutString (const char *pszPrefixText, const char *thestring) |
Static method that outputs a line for debugging purposes (C string version). The text appears with the extra string appearing afterwards. | |
static void | DebugOutString (const char *pszPrefixText, FCString *pString) |
Static method that outputs a line for debugging purposes (FCString version). The text appears with the extra string appearing afterwards. | |
static void | DebugOutBool (const char *pszPrefixText, bool state) |
Static method that outputs a line for debugging purposes. The boolean state appears afterwards as either "TRUE" or "FALSE". | |
static void | DebugOutBlock (const void *pBuffer, int startoffset, int size) |
Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) until the whole memory block is dumped. | |
static void | DebugOutByteArrayBlock (const void *pBuffer, int startoffset, int size) |
Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) as a C++ onebyte array, until the whole memory block is dumped. | |
static void | DebugOut (const char *pszLine) |
Static method to output a line of text for debugging purposes. | |
Protected Member Functions inherited from __FCBase | |
__FCBase () | |
The constructor. | |
Collection class for FCString class objects.
Supports <close>
in Lua 5.4 (__FCCollection::ClearAll).
|
inline |
The constructor.
Lua-supported.
|
inline |
|
inlineoverridevirtual |
Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class.
Lua-supported.
Reimplemented from __FCCollection.
|
inline |
Removes all empty strings and all NULL pointers from the collection. The objects are disposed from the heap.
Lua-supported.
|
inline |
Returns true if any of the strings in the collection is an Enigma font command.
Lua-supported.
|
inline |
Recreates a string collection. Any existing strings in the collection are cleared. NULL entries in the string table are also supported.
Lua-supported
|
inline |
Replaces the contents of the collection from the input vector of std::string.
Lua scripts can pass in a Lua table containing Lua strings. Normally these are encoded UTF-8.
Lua-supported (0.64).
strings | A vector of std::string (C++) or a table of strings (Lua). |
|
inline |
Creates a FCString object based on the string collection "rows". It's created by concatenating all strings in the collection into one with new lines between.
The new line characters added between the rows are platform-specific. If there are NULL members in the collection, these get a new line.
It's the caller's responsibility to delete the created FCString object from the heap after use.
Lua-supported.
bNewLineAtEnd | If true, there will be a new line after the last string (and an empty string collection would result in a new line string). |
|
inline |
Create settings pairs based on the strings in the collection. The created collection must be deleted after use.
It scans the string collection and puts strings that follows the 'key=rightsidevalue' syntax in the settings pair collection. Strings that don't follow the syntax will not be included in the settings pair collection.
It's possible to use '=' in the value part, everything after the first '=' is considered to be a part of the value.
|
inline |
Finds the exact string content in the collection.
Lua-supported.
Finds the string contents in the collection, in a case-insensitive search.
Much slower than the Find method.
Lua-supported.
|
inline |
Overridden GetItemAt() method.
Lua-supported.
|
inline |
Inserts FCString at given index.
This function makes a copy of the input string and then calls InsertItemAt to insert it into the collection.
Lua-supported (0.59).
pNewString | the string to be copied. Unlike with InsertItemAt, the caller retains ownership of the pointer, so it can be a pointer to a stack variable or a Lua userdata item. |
index | the index at which to insert the string. |
bool FCStrings::LoadFolderFiles | ( | FCString * | pFolderString | ) |
Gets all files names in a specific folder.
Lua-supported.
pFolderString | The folder where the files are located. |
bool FCStrings::LoadSubfolders | ( | FCString * | pFolderString | ) |
Gets all subfolder names in a specific folder.
Lua-supported.
bool FCStrings::LoadSymbolFonts | ( | ) |
Loads the user's macsymbolfonts.txt file into the string collection. The string collection will be sorted in the same order that the lines appear in the file.
Lua-supported.
bool FCStrings::LoadSystemFontNames | ( | ) |
Gets all the font names on the system.
On the Mac, the font families are listed instead of the actual font names, since font families are what Finale uses for font selections.
Lua-supported.
void FCStrings::ParseEnigmaFontInfo | ( | int | index, |
FCFontInfo * | pFontInfo ) |
Browses the font info available in the strings from the start of the file up until (but not including) the index position.
Lua-supported.
index | The 0-based index. |
pFontInfo | The pointer to the input/output font info object. This object is NOT reset at the parsing start. It's modified each time an Enigma font/size/style command is found as a substring. |
void FCStrings::SortAlphabetical | ( | ) |
Makes a "non-intelligent" simple alphabetical sort of the string collection.
Lua-supported.
|
inline |
Trims leading and trailing whitespace in all the collection's strings.
Lua-supported.