Finale PDK Framework 0.73
Public Types | Public Member Functions | List of all members
FCCellFrameHold Class Reference

Class that holds the TGF frames and the clef changes of a TGF frame. More...

#include <ff_celldetails.h>

Inheritance diagram for FCCellFrameHold:
__FCNoInciCellDetail __FCCellDetail __FCBaseData __FCBase

Public Types

enum  CLEF_SHOW { SHOWCLEF_NORMAL = 0 , SHOWCLEF_HIDE , SHOWCLEF_ALWAYS }
 The clef display states. Used for FCCellFrameHold::GetClefShow and FCCellFrameHold::SetClefShow. Also used for FCCellClefChange::GetClefShow and FCCellClefChange::SetClefShow. More...
 
- 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...
 

Public Member Functions

const char * ClassName () const override
 Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More...
 
const PDKFRAMEWORK_CLASSID GetClassID () const override
 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. More...
 
 FCCellFrameHold ()
 The constructor. More...
 
twobyte GetClefIndex () const
 Gets the 0-based clef number for the first clef in the frame. More...
 
twobyte GetClefPercent () const
 Gets the clef resize percent for the first clef in the frame. Only used if GetClefShow returns SHOWCLEF_ALWAYS. More...
 
CLEF_SHOW GetClefShow () const
 Returns the show state for the first clef in the frame. More...
 
bool GetIsClefList () const
 Returns if the frame contains a clef list or not. More...
 
bool GetClefAfterBarline () const
 Returns true if the clef should be placed after the barline. More...
 
void SetClefIndex (twobyte newclef)
 Sets the 0-based clef number for the first clef in the frame. More...
 
void SetClefPercent (twobyte resize)
 Sets the clef resize percent. Only used if GetClefShow returns SHOWCLEF_ALWAYS. More...
 
void SetClefShow (CLEF_SHOW value)
 Sets the show state for the first clef in the frame. More...
 
void SetClefAfterBarline (bool state)
 Sets if the clef should be placed after the barline. More...
 
bool CalcClefChange ()
 Calculates if there really is a clef change at the beginning of the cell. More...
 
bool CalcHasFrame () const
 Calculates if this cell has a frame. More...
 
bool CalcHasFrameAtLayer (int layernum) const
 Calculates if this cell has a frame for the specified layer. More...
 
bool CalcMultiLayeredCell ()
 Calculates if this cell has multiple layers. More...
 
bool SaveNew () override
 Overwritten method for SaveNew. More...
 
FCCellClefChangeCreateFirstCellClefChange () const
 Creates a FCCellClefChange record from the either the FCCellFrameHold or the first mid-measure clef at EDU 0, if any. (See FCCellClefChanges for more information about mid-measure clefs.) More...
 
bool MakeCellSingleClef (const FCCellClefChange *pClefInfo=nullptr)
 Converts the current FCCellFrameHold instance to single-clef, using the input FCCellClefChange. If the current instance is already single-clef, it updates the clef information from the input. More...
 
FCCellClefChangesCreateCellClefChanges ()
 Creates a FCCellClefChanges collection for the cell, containing all clef changes. More...
 
bool SetCellClefChanges (FCCellClefChanges *pClefChanges)
 Sets the clefs in the cell to match those in the input FCCellClefChanges. More...
 
void DebugDump () override
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCNoInciCellDetail
bool Load ()
 Loads the data for the connected cell. Make sure to call ConnectCell first. More...
 
- Public Member Functions inherited from __FCCellDetail
void ConnectCell (FCCell *pCell)
 Connects the object to a cell. This must be done prior to any load/save operations. More...
 
FCCellGetConnectedCell () const
 Returns the connected cell.
 
bool LoadLast () override
 Overloads the LoadLast method with a one that loads the cell data into cmper1 (staff), cmper2 (measure) and the last found inci. More...
 
bool LoadPrevious () override
 
virtual TimeEdu32 GetMeasurePos () const
 Virtual method for cell-attached data that has a position in the measure. More...
 
virtual eMeas GetMeasure () const
 Returns the connected measure (based on the connected cell or actual storage). More...
 
virtual twobyte GetStaff () const
 Returns the connected staff (based on the connected cell). More...
 
- Public Member Functions inherited from __FCBaseData
EDOCID GetConnectedDocID () const
 Returns the document ID that was connected to the last load/save of the data. More...
 
bool VerifyConnectedDocID ()
 Checks that the stored document ID for the data object matches the current document's ID. More...
 
virtual EXTAG Tag () const =0
 The Enigma tag for the derived class. More...
 
virtual EVERSION EnigmaVersion () const
 The Enigma version for save/load/create/delete operations. More...
 
virtual int DataSizeLoad () const =0
 Returns the data size for the data structure that should be loaded. More...
 
virtual int DataSizeSave () const
 Returns the data size for the data structure that should be saved or created. More...
 
void _CloneFrom (__FCBaseData *pSource)
 For internal use only. Copies object data (except data block) from another object. More...
 
virtual void CloneMemoryFrom (__FCBaseData *pSource)
 
const EDataID * _GetDataID ()
 Intended ONLY for the _CloneFrom implementation. More...
 
int _GetLoadedSize () const
 Intended ONLY for the _CloneFrom implementation. More...
 
const void * GetDataBlock ()
 Intended ONLY for the _CloneFrom implementation. More...
 
EXTAG GetCustomTag () const
 Returns the custom Enigma tag, if any. More...
 
void SetCustomTag (EXTAG tag)
 Sets the custom Enigma tag, for classes that support multiple Enigma tags. More...
 
 __FCBaseData ()
 The constructor.
 
virtual ~__FCBaseData ()
 Virtual destructor.
 
virtual bool Save ()
 Saves the currently loaded to its current location. More...
 
virtual bool Reload ()
 Refreshes the data for the object, to synch the data with Finale's current data. More...
 
virtual bool DeleteData ()
 Deletes the associated data from Finale's database. Be careful when deleting multiple objects. More...
 
virtual bool DeepDeleteData ()
 Deletes data and all data that's connected to the object. More...
 
bool RelinkToCurrentView ()
 Relinks the contents in the current view so that the score and part(s) match. More...
 
bool RelinkToScore ()
 Relinks all parts to the contents of the score. More...
 
__FCBaseDataCreateClone ()
 Creates an identical copy of an object. More...
 
void DebugDataDump () override
 Outputs a memory dump of the data block in the object for debugging purposes. More...
 
void DebugDataByteArrayDump () override
 Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. More...
 
void DebugDataOffsetDump (int offset, int size)
 For debug mode only. Dumps a data memory block at a specific offset and with a specific size.
 
FCNumbersCreateRawDataDump ()
 Creates a byte collection with the raw loaded data block for the object (if the object type supports single data blocks). This method is only intended for debug purposes. More...
 
- Public Member Functions inherited from __FCBase
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. More...
 
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. More...
 
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. More...
 
void DebugMsg (const char *pszMsg)
 Creates a simple Message Box for debug purposes with just one text string. More...
 
void DebugOutMenuInfo (FCUI *pUI, int menuixd_horiz, int menuixd_vert) const
 Outputs the menu command info for debugging purposes. More...
 
int DebugOutFormat (const char *fmt,...)
 Outputs debug text using C style "printf" syntax. More...
 
void Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state)
 Sets a 16 bit flag. More...
 
void Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state)
 Sets/resets a 32 bit flag, by using a bit mask. More...
 
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. More...
 
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. More...
 
void SetUserData (void *pData)
 Sets the user data attached to the instance of an object. More...
 
void SetUserData2 (void *pData)
 Sets the additional user data attached to the instance of an object. More...
 
void * GetUserData () const
 Gets the user data attached to the instance of an object. More...
 
void * GetUserData2 () const
 Gets the additional user data attached to the instance of an object. More...
 
virtual bool IsIdentical (const __FCBase *pCompareObject) const
 Returns true if the data in the passed object is considered to be identical to the current object, otherwise false. More...
 
void StoreXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file. More...
 
void StoreXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int value)
 Helper function to store integer objects in the XML file. More...
 
void StoreXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool value)
 Helper function to store boolean objects in the XML file. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
virtual void StoreToXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to store an object's data. More...
 
bool ReadXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file. More...
 
bool ReadXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int *pValue)
 Helper method to read integer objects from the XML file. More...
 
bool ReadXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool *pValue)
 Helper method to read boolean objects from the XML file. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
virtual bool ReadFromXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to read object data. More...
 

Additional Inherited Members

- 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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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". More...
 
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. More...
 
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. More...
 
static void DebugOut (const char *pszLine)
 Static method to output a line of text for debugging purposes. More...
 
- Protected Member Functions inherited from __FCBaseData
virtual void * Allocate ()=0
 
virtual void Deallocate ()
 
virtual bool IsDynamicSize ()
 
bool LoadDataBlock ()
 Loads the data. If the object is of dynamic size, the old memory block is freed and a new is allocated.
 
void ClearData ()
 
virtual twobyte CalcLastInci ()
 For internal use only! More...
 
virtual __FCBaseDataCreateObject ()=0
 Creates a new instance of the object. More...
 
bool DataIsLoaded () const
 Returns true is any data has been loaded into the object.
 
void _TagDocumentID ()
 For internal use only. More...
 
- Protected Member Functions inherited from __FCBase
 __FCBase ()
 The constructor.
 
- Protected Attributes inherited from __FCBaseData
EDOCID _connecteddocID
 The "connected" document ID., which is the document the where the document was loaded (or last saved). This is for a mechanism to prevent resaving of certain data in other documents.
 
void * _datablock
 Pointer to the object's data block, the meaning is implementation-specific for each derived subclass.
 
bool _heapdatablock
 Variable that tells if _datablock is dynamically created on the heap (and should be deleted at object destruction).
 
int _loadedsize
 Loaded size of the data block for a loaded object, in bytes. Since the datablock is implementation-specific, the _loadedsize should be updated by child classes that create new data. More...
 
EDataID _dataid
 The EdataID for the last loaded/saved object.
 

Detailed Description

Class that holds the TGF frames and the clef changes of a TGF frame.

Make sure to call ConnectCell() first.

Only one FCCellFrameHold data record should exists for each cell. It appears in cells with note entries and in cells with clef changes at the start.

Instead of a single clef change, the frame might have a clef change list if there are multiple clef changes. A clef change collection with mid-measure clef changes are obtained with the CreateCellClefChanges() method.

Member Enumeration Documentation

◆ CLEF_SHOW

The clef display states. Used for FCCellFrameHold::GetClefShow and FCCellFrameHold::SetClefShow. Also used for FCCellClefChange::GetClefShow and FCCellClefChange::SetClefShow.

Lua-supported.

Constructor & Destructor Documentation

◆ FCCellFrameHold()

FCCellFrameHold::FCCellFrameHold ( )

The constructor.

Lua-supported.

Member Function Documentation

◆ CalcClefChange()

bool FCCellFrameHold::CalcClefChange ( )

Calculates if there really is a clef change at the beginning of the cell.

The frame object must have been loaded before calling this method.

Lua-supported.

Returns
True if there's a clef change at the beginning of the cell.

◆ CalcHasFrame()

bool FCCellFrameHold::CalcHasFrame ( ) const
inline

Calculates if this cell has a frame.

Lua-supported (0.62)

◆ CalcHasFrameAtLayer()

bool FCCellFrameHold::CalcHasFrameAtLayer ( int  layernum) const
inline

Calculates if this cell has a frame for the specified layer.

Lua-supported (0.65)

Parameters
layernumthe 1-based layer number to check

◆ CalcMultiLayeredCell()

bool FCCellFrameHold::CalcMultiLayeredCell ( )
inline

Calculates if this cell has multiple layers.

Lua-supported (0.62)

◆ ClassName()

const char * FCCellFrameHold::ClassName ( ) const
inlineoverridevirtual

Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class.

Lua-supported.

Reimplemented from __FCNoInciCellDetail.

◆ CreateCellClefChanges()

FCCellClefChanges * FCCellFrameHold::CreateCellClefChanges ( )

Creates a FCCellClefChanges collection for the cell, containing all clef changes.

For callers that are not Lua scripts, it is the caller's responsibility to delete the created object from the heap.

Lua-supported.

Returns
NULL on error, or if the frame has no clef change list. Otherwise a FCCellClefChanges collection object.

◆ CreateFirstCellClefChange()

FCCellClefChange * FCCellFrameHold::CreateFirstCellClefChange ( ) const

Creates a FCCellClefChange record from the either the FCCellFrameHold or the first mid-measure clef at EDU 0, if any. (See FCCellClefChanges for more information about mid-measure clefs.)

Depending on the current state of the FCCellFrameHold, the object returned may or may not have been loaded from the document. Do not try to save the returned FCCellClefChange back to the document directly. A recommended use case is to pass it to MakeCellSingleClef for the same and/or a different FCCellFrameHold, then save the FCCellFrameHold. This would set the target hold frames' clefs to match the the FCCellClefChange record, effectively clearing out any clef changes.

For callers that are not Lua scripts, it is the caller's responsibility to delete the created object from the heap.

Lua-supported (0.59).

Returns
a FCCellClefChange instance containing the clef information at the beginning of the cell, or NULL if there is an error (unlikely).

◆ DebugDump()

void FCCellFrameHold::DebugDump ( )
inlineoverridevirtual

Outputs the class data/information for debugging purposes.

Accessible if PDK_FRAMEWORK_DEBUG is defined.

When child class inherit this method to output the contents of its own members, it should call the parent before providing its own output.

Reimplemented from __FCCellDetail.

◆ GetClassID()

const PDKFRAMEWORK_CLASSID FCCellFrameHold::GetClassID ( ) const
inlineoverridevirtual

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.

This method must be overwritten by all child classes.

Lua-supported (also read-only property) (0.55).

Implements __FCBaseData.

◆ GetClefAfterBarline()

bool FCCellFrameHold::GetClefAfterBarline ( ) const
inline

Returns true if the clef should be placed after the barline.

Lua-supported (also as property).

◆ GetClefIndex()

twobyte FCCellFrameHold::GetClefIndex ( ) const
inline

Gets the 0-based clef number for the first clef in the frame.

Lua-supported (also as property).

◆ GetClefPercent()

twobyte FCCellFrameHold::GetClefPercent ( ) const
inline

Gets the clef resize percent for the first clef in the frame. Only used if GetClefShow returns SHOWCLEF_ALWAYS.

Lua-supported (also as property).

◆ GetClefShow()

CLEF_SHOW FCCellFrameHold::GetClefShow ( ) const
inline

Returns the show state for the first clef in the frame.

Lua-supported (also as property).

Returns
Any of the SHOWCLEF_ constants.

◆ GetIsClefList()

bool FCCellFrameHold::GetIsClefList ( ) const
inline

Returns if the frame contains a clef list or not.

Lua-supported (also as a read-only property).

◆ MakeCellSingleClef()

bool FCCellFrameHold::MakeCellSingleClef ( const FCCellClefChange pClefInfo = nullptr)

Converts the current FCCellFrameHold instance to single-clef, using the input FCCellClefChange. If the current instance is already single-clef, it updates the clef information from the input.

A recommended use case is to pass in the result of a call to CreateFirstCellClefChange or a member of the collection returned by CreateCellClefChanges.

Lua-supported (0.59).

Parameters
[in]pClefInfoFCCellClefChange instance from which to copy. May be omitted (nil in Lua) to use the the first clef that is already there in the measure.
Returns
true if success or false if an error occurred (unlikely).

◆ SaveNew()

bool FCCellFrameHold::SaveNew ( )
overridevirtual

Overwritten method for SaveNew.

Lua-supported.

Reimplemented from __FCNoInciCellDetail.

◆ SetCellClefChanges()

bool FCCellFrameHold::SetCellClefChanges ( FCCellClefChanges pClefChanges)

Sets the clefs in the cell to match those in the input FCCellClefChanges.

If the input collection contains 0 or 1 members, the FCCellFrameHold is set to single-clef. Otherwise, the mid-measure clef changes are changed to match the input clef changes.

This function fails unless the first element is at measure position 0 and the last is less than the global duration of the connected measure. (Note that clef positioning ignores Independent Time Signature on a staff.) The function also fails if the measure positions of the elements are out of sequence.

Lua-supported (0.59).

Parameters
[in]pClefChangesthe list of clefs
Returns
true if succes or false if error or invalid.

◆ SetClefAfterBarline()

void FCCellFrameHold::SetClefAfterBarline ( bool  state)
inline

Sets if the clef should be placed after the barline.

This method will not do anything if the frame has a clef list.

Lua-supported (also as property).

◆ SetClefIndex()

void FCCellFrameHold::SetClefIndex ( twobyte  newclef)
inline

Sets the 0-based clef number for the first clef in the frame.

This method will not do anything if the frame has a clef list.

Lua-supported (also as property).

◆ SetClefPercent()

void FCCellFrameHold::SetClefPercent ( twobyte  resize)
inline

Sets the clef resize percent. Only used if GetClefShow returns SHOWCLEF_ALWAYS.

This method will not do anything if the frame has a clef list.

Lua-supported (also as property).

◆ SetClefShow()

void FCCellFrameHold::SetClefShow ( CLEF_SHOW  value)
inline

Sets the show state for the first clef in the frame.

This method will not do anything if the frame has a clef list.

Lua-supported (also as property).

Parameters
valueAny of the SHOWCLEF_ constants.