Finale PDK Framework 0.71
Public Types | Public Member Functions | List of all members
FCExpression Class Reference

Class for expression assignments to a measure/staff. More...

#include <ff_other.h>

Inheritance diagram for FCExpression:
__FCInciOther __FCOther __FCBaseData __FCBase

Public Types

enum  EXPRESSION_PLAYBACK_STARTPOINTS { EXPRPLAYSTART_POSINMEASURE = 0 , EXPRPLAYSTART_ALIGNMENTPOINT = 1 , EXPRPLAYSTART_BEGINNINGOFMEASURE = 2 }
 Constants for GetPlaybackStart() and SetPlaybackStart(). 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_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...
 
EXTAG Tag () const override
 The Enigma tag for the derived class. More...
 
 FCExpression ()
 The constructor. More...
 
bool AssignTextExpressionDef (FCTextExpressionDef *pDef)
 Assigns a saved text expression definition to an expression. More...
 
bool AssignShapeExpressionDef (FCShapeExpressionDef *pDef)
 Assigns a saved shape expression definition to an expression. More...
 
bool CalcMetricPos (FCPoint *pPoint)
 Calculates the metric position for an expression in the current layout. The position is in page coordinates. More...
 
void ResetPos ()
 Resets the position of the expression. More...
 
twobyte GetStaff () const override
 Returns the 1-based staff number that the expression is assigned to. More...
 
eStaff CalcStaffInPageView () const
 Calculates the 1-based staff number that the expression is assigned to, taking into account assignment to top/bottom staff for the staff system in page view. More...
 
eStaff CalcStaffInScrollView () const
 Calculates the 1-based staff number that the expression is assigned to, taking into account assignment to top/bottom staff for the current staff set in scroll view. (Also studio view.) More...
 
eStaff CalcStaffInCurrentView () const
 Calculates the 1-based staff number that the expression is assigned to in the current view. More...
 
bool HasStaffValue () const override
 Overridden version, since this class supports staff returns. More...
 
eMeas GetMeasure () const override
 Returns the 1-based measure number that the expression is assigned to. More...
 
twobyte GetLayerAssignment () const
 Returns the layer that the expression is assigned to. More...
 
twobyte GetPlaybackLayerAssignment () const
 Returns the layer that the playback of the expression is assigned to. More...
 
EXPRESSION_PLAYBACK_STARTPOINTS GetPlaybackStart () const
 Returns the playback start point for the expression. More...
 
bool GetScoreAssignment () const
 Returns true if the expression is assigned to the score. More...
 
bool GetPartAssignment () const
 Returns true if the expression is assigned to the parts. More...
 
twobyte GetStaffListID () const
 Returns the staff list ID for the expression. More...
 
twobyte GetStaffGroupID () const
 Returns the "staff group" ID for the staff, which is used for expressions that are one unity in a staff lists. More...
 
twobyte GetRehearsalMarkOffset () const
 Returns the rehearsal mark offset. More...
 
bool GetVisible () const
 Returns the display state of the expression (relative to the active part). More...
 
bool GetScaleWithEntry () const
 Returns if the expression should scale to entry or not. More...
 
TimeEdu32 GetMeasurePos () const override
 Returns the expression position in EDUs. More...
 
twobyte GetHorizontalPos () const
 Returns the horizontal offset position in EVPUs. More...
 
twobyte GetVerticalPos () const
 Returns the vertical offset position in EVPUs. More...
 
twobyte GetGraceNoteIndex () const
 Returns the grace note index that the expression is connected to. More...
 
bool IsVisibleOnStaff (twobyte staff)
 Returns true if the expression is displayed on the staff. This method takes both individual expressions and staff lists into account. More...
 
FCShapeExpressionDefCreateShapeExpressionDef ()
 Creates a shape expression definition object for the expression. More...
 
FCTextExpressionDefCreateTextExpressionDef ()
 Creates a text expression definition object for the expression. More...
 
bool IsShape () const
 Returns true if the expression is a shape expression. More...
 
bool IsSingleStaffAssigned ()
 Returns true if the expression is assigned to a single staff. More...
 
bool GetShape () const
 Identical to IsShape(). More...
 
twobyte GetID () const
 Returns the definition ID for the shape or text expresion. More...
 
bool SaveNewToCell (FCCell *pCell)
 Saves an expression to a single cell. It also automatically sets the expression attribute for the measure so the expression will be displayed. More...
 
void SetID (twobyte id)
 Sets the definition ID for the shape or text expresion. More...
 
void SetLayerAssignment (twobyte layer)
 Sets the layer that the expression is assigned to. More...
 
void SetScoreAssignment (bool value)
 Sets if the expression is assigned to the score. More...
 
void SetPartAssignment (bool value)
 Sets if the expression is assigned to the parts. More...
 
void SetPlaybackLayerAssignment (twobyte layer)
 Sets the layer that the playback of the expression is assigned to. More...
 
void SetPlaybackStart (EXPRESSION_PLAYBACK_STARTPOINTS value)
 Sets the playback start point for the expression. More...
 
void SetStaff (twobyte staffno)
 Sets the assigned staff. More...
 
void SetShape (bool isshape)
 Marks the expression as a shape or a text expression. More...
 
void SetStaffListID (twobyte ID)
 Sets the staff list ID for the expression. More...
 
void SetStaffGroupID (twobyte value)
 Sets the "staff group" ID for the staff, which is used for expressions that are one unity in a staff lists. More...
 
void SetRehearsalMarkOffset (twobyte value)
 Sets the rehearsal mark offset. More...
 
void SetVisible (bool state)
 Sets the display state of the expression (relative to the active part). More...
 
void SetScaleWithEntry (bool state)
 Sets if the expression should scale to entry. More...
 
void SetMeasurePos (TimeEdu32 value)
 Sets the expression position in EDUs. More...
 
void SetHorizontalPos (twobyte value)
 Sets the horizontal position offset, in EVPUs. More...
 
void SetVerticalPos (twobyte value)
 Sets the vertical position offset, in EVPUs. More...
 
void SetGraceNoteIndex (twobyte index)
 Sets the grace note index, for when expression are connected to grace notes. More...
 
void DebugDump () override
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCInciOther
 __FCInciOther ()
 The constructor.
 
virtual bool Load (CMPER itemno, twobyte inci)
 Loads the indicated record within the item number. More...
 
twobyte CalcLastInci () override
 Overridden version of CalcLastInci for __FCInciOther-based classes. More...
 
bool Reload () override
 Overridden version of Reload(), to support complex (mixed) data types. More...
 
virtual bool SaveNew (CMPER itemno)
 Creates a new inci record with data. More...
 
void _SetCmper (CMPER cmper)
 Primarily for internal use. More...
 
int GetItemCmper () const
 Returns the cmper (main record) value for a loaded record. More...
 
int GetItemInci () const
 Returns the inci (subrecord) value in the data ID for a loaded record. More...
 
- Public Member Functions inherited from __FCOther
void SetCmperAndInci (CMPER cmper, twobyte inci)
 Sets both the CMPER and the incident number in the dataID record. Mainly for internal use.
 
 __FCOther ()
 The constructor.
 
bool IsIdenticalRecord (__FCOther *pCompare)
 Compares an object to see if both objects point to the same data record. 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 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 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...
 
virtual bool LoadFirst ()=0
 Loads the very first element in the database, if any. More...
 
virtual bool LoadLast ()
 Loads the very last element in the database, if any. More...
 
virtual bool LoadNext ()
 Loads the next element from the database, if any. More...
 
virtual bool LoadPrevious ()
 Loads the previous element in the database, if any. 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 (__FCBase *pCompareObject)
 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 __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 for expression assignments to a measure/staff.

Member Enumeration Documentation

◆ EXPRESSION_PLAYBACK_STARTPOINTS

Constants for GetPlaybackStart() and SetPlaybackStart().

Lua-supported.

Enumerator
EXPRPLAYSTART_POSINMEASURE 

Playback start at position in measure.

EXPRPLAYSTART_ALIGNMENTPOINT 

Playback start at alignment point.

EXPRPLAYSTART_BEGINNINGOFMEASURE 

Playback start at beginning of measure.

Constructor & Destructor Documentation

◆ FCExpression()

FCExpression::FCExpression ( )
inline

The constructor.

Lua-supported.

Member Function Documentation

◆ AssignShapeExpressionDef()

bool FCExpression::AssignShapeExpressionDef ( FCShapeExpressionDef pDef)

Assigns a saved shape expression definition to an expression.

Lua-supported.

Returns
True if the assignment was successful.

◆ AssignTextExpressionDef()

bool FCExpression::AssignTextExpressionDef ( FCTextExpressionDef pDef)

Assigns a saved text expression definition to an expression.

Lua-supported.

Returns
True if the assignment was successful.

◆ CalcMetricPos()

bool FCExpression::CalcMetricPos ( FCPoint pPoint)

Calculates the metric position for an expression in the current layout. The position is in page coordinates.

Please note that, although this is an accurate approach, loading Finale's metrics is extremely
slow.

Lua-supported.

Returns
True on success.

◆ CalcStaffInCurrentView()

eStaff FCExpression::CalcStaffInCurrentView ( ) const

Calculates the 1-based staff number that the expression is assigned to in the current view.

If the expression is explicitly assigned to a staff, then this function is the same as calling GetStaff. If the expression is assigned to the top or bottom staff, this function returns the top or bottom staff where the expression is assigned currently in view.

Lua-supported (0.63).

Returns
calculated 1-based staff number or 0 if error

◆ CalcStaffInPageView()

eStaff FCExpression::CalcStaffInPageView ( ) const

Calculates the 1-based staff number that the expression is assigned to, taking into account assignment to top/bottom staff for the staff system in page view.

If the expression is explicitly assigned to a staff, then this function is the same as calling GetStaff. If the expression is assigned to the top or bottom staff, this function returns the top or bottom staff of the system in page view (for the current part or score) where the expression is assigned.

Lua-supported (0.63).

Returns
calculated 1-based staff number or 0 if error

◆ CalcStaffInScrollView()

eStaff FCExpression::CalcStaffInScrollView ( ) const

Calculates the 1-based staff number that the expression is assigned to, taking into account assignment to top/bottom staff for the current staff set in scroll view. (Also studio view.)

If the expression is explicitly assigned to a staff, then this function is the same as calling GetStaff. If the expression is assigned to the top or bottom staff, this function returns the top or bottom staff of the current staff set in scroll view (for the current part or score).

Lua-supported (0.63).

Returns
calculated 1-based staff number or 0 if error

◆ ClassName()

const char * FCExpression::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 __FCInciOther.

◆ CreateShapeExpressionDef()

FCShapeExpressionDef * FCExpression::CreateShapeExpressionDef ( )

Creates a shape expression definition object for the expression.

Lua-supported.

Returns
Pointer to the created object. NULL if the expression is a text expression definition. The object must be deleted from the heap after use.

◆ CreateTextExpressionDef()

FCTextExpressionDef * FCExpression::CreateTextExpressionDef ( )

Creates a text expression definition object for the expression.

Lua-supported.

Returns
Pointer to the created object. NULL if the expression is a shape expression definition. The object must be deleted from the heap after use.

◆ DebugDump()

void FCExpression::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 __FCBaseData.

◆ GetClassID()

const PDKFRAMEWORK_CLASSID FCExpression::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.

◆ GetGraceNoteIndex()

twobyte FCExpression::GetGraceNoteIndex ( ) const
inline

Returns the grace note index that the expression is connected to.

Returns
The main note is 0. The grace note immediatelly to the left is 1, and so on.

◆ GetHorizontalPos()

twobyte FCExpression::GetHorizontalPos ( ) const
inline

Returns the horizontal offset position in EVPUs.

Positive values means to the right.

Lua-supported (also as property).

◆ GetID()

twobyte FCExpression::GetID ( ) const
inline

Returns the definition ID for the shape or text expresion.

Use FCTextExpressionDef or FCShapeExpressionDef to load the definition. Use the IsShape method to determine if it's a text or shape expression.

Lua-supported (also as property).

Returns
The 1-based expression definition ID.

◆ GetLayerAssignment()

twobyte FCExpression::GetLayerAssignment ( ) const
inline

Returns the layer that the expression is assigned to.

Lua-supported (also as property).

Returns
0 means attached to all layers. Otherwise, the 1-based layer number.

◆ GetMeasure()

eMeas FCExpression::GetMeasure ( ) const
inlineoverridevirtual

Returns the 1-based measure number that the expression is assigned to.

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

Reimplemented from __FCInciOther.

◆ GetMeasurePos()

TimeEdu32 FCExpression::GetMeasurePos ( ) const
inlineoverridevirtual

Returns the expression position in EDUs.

Lua-supported (also as property).

Reimplemented from __FCInciOther.

◆ GetPartAssignment()

bool FCExpression::GetPartAssignment ( ) const
inline

Returns true if the expression is assigned to the parts.

Lua-supported (also as property).

◆ GetPlaybackLayerAssignment()

twobyte FCExpression::GetPlaybackLayerAssignment ( ) const
inline

Returns the layer that the playback of the expression is assigned to.

Special values:

  • 0 - playback assigned to current layer.
  • 5 - playback assigned to chord layer
  • 6 - playback assigned to expression layer

Lua-supported (also as property).

Returns
The 1-based layer number, or a special value.

◆ GetPlaybackStart()

EXPRESSION_PLAYBACK_STARTPOINTS FCExpression::GetPlaybackStart ( ) const
inline

Returns the playback start point for the expression.

Lua-supported (also as property).

Returns
Any of the EXPRPLAYSTART_ constants.

◆ GetRehearsalMarkOffset()

twobyte FCExpression::GetRehearsalMarkOffset ( ) const
inline

Returns the rehearsal mark offset.

Lua-supported (also as property).

Returns
0 - keep on the current numbering. 1 and above - set the offset

◆ GetScaleWithEntry()

bool FCExpression::GetScaleWithEntry ( ) const
inline

Returns if the expression should scale to entry or not.

Lua-supported (also as property).

◆ GetScoreAssignment()

bool FCExpression::GetScoreAssignment ( ) const
inline

Returns true if the expression is assigned to the score.

Lua-supported (also as property).

◆ GetShape()

bool FCExpression::GetShape ( ) const
inline

Identical to IsShape().

Lua-supported (also as property).

◆ GetStaff()

twobyte FCExpression::GetStaff ( ) const
inlineoverridevirtual

Returns the 1-based staff number that the expression is assigned to.

Lua-supported (also as property).

Returns
-1 if it's a staff list item that's attached to the top staff. -2 if it's a staff list item that's attached to the bottom staff. Otherwise the staff number.

Reimplemented from __FCInciOther.

◆ GetStaffGroupID()

twobyte FCExpression::GetStaffGroupID ( ) const
inline

Returns the "staff group" ID for the staff, which is used for expressions that are one unity in a staff lists.

Lua-supported (also as property).

◆ GetStaffListID()

twobyte FCExpression::GetStaffListID ( ) const
inline

Returns the staff list ID for the expression.

Use FCStaffList or FCStaffLists classes to load.

Lua-supported (also as property).

Returns
The staff list ID. 0 if no staff list ID.

◆ GetVerticalPos()

twobyte FCExpression::GetVerticalPos ( ) const
inline

Returns the vertical offset position in EVPUs.

Positive is up, negative is down.

Lua-supported (also as property).

◆ GetVisible()

bool FCExpression::GetVisible ( ) const
inline

Returns the display state of the expression (relative to the active part).

Lua-supported (also as property).

◆ HasStaffValue()

bool FCExpression::HasStaffValue ( ) const
inlineoverridevirtual

Overridden version, since this class supports staff returns.

Reimplemented from __FCInciOther.

◆ IsShape()

bool FCExpression::IsShape ( ) const
inline

Returns true if the expression is a shape expression.

Lua-supported.

Returns
True - expression is a shape expression. False - expression is a text expression.

◆ IsSingleStaffAssigned()

bool FCExpression::IsSingleStaffAssigned ( )
inline

Returns true if the expression is assigned to a single staff.

Lua-supported.

Returns
True - expression is assigned to a single staff. False - expression is assigned to multiple staves (a staff list).

◆ IsVisibleOnStaff()

bool FCExpression::IsVisibleOnStaff ( twobyte  staff)

Returns true if the expression is displayed on the staff. This method takes both individual expressions and staff lists into account.

Parameters
staffThe 1-based staff number

◆ ResetPos()

void FCExpression::ResetPos ( )
inline

Resets the position of the expression.

Lua-supported.

◆ SaveNewToCell()

bool FCExpression::SaveNewToCell ( FCCell pCell)

Saves an expression to a single cell. It also automatically sets the expression attribute for the measure so the expression will be displayed.

Lua-supported.

◆ SetGraceNoteIndex()

void FCExpression::SetGraceNoteIndex ( twobyte  index)
inline

Sets the grace note index, for when expression are connected to grace notes.

Parameters
indexThe main note is 0. The grace note immediatelly to the left is 1, and so on.

◆ SetHorizontalPos()

void FCExpression::SetHorizontalPos ( twobyte  value)
inline

Sets the horizontal position offset, in EVPUs.

Positive values means to the right.

Lua-supported (also as property).

◆ SetID()

void FCExpression::SetID ( twobyte  id)
inline

Sets the definition ID for the shape or text expresion.

See GetID for more info.

Lua-supported (also as property).

Parameters
idThe 1-based expression definition ID.

◆ SetLayerAssignment()

void FCExpression::SetLayerAssignment ( twobyte  layer)
inline

Sets the layer that the expression is assigned to.

Lua-supported (also as property).

Parameters
layer0 means attached to all layers. Otherwise, a 1-based layer number.

◆ SetMeasurePos()

void FCExpression::SetMeasurePos ( TimeEdu32  value)
inline

Sets the expression position in EDUs.

Lua-supported (also as property).

◆ SetPartAssignment()

void FCExpression::SetPartAssignment ( bool  value)
inline

Sets if the expression is assigned to the parts.

Lua-supported (also as property).

◆ SetPlaybackLayerAssignment()

void FCExpression::SetPlaybackLayerAssignment ( twobyte  layer)
inline

Sets the layer that the playback of the expression is assigned to.

Special values:

  • 0 - playback assigned to current layer.
  • 5 - playback assigned to chord layer
  • 6 - playback assigned to expression layer

Lua-supported (also as property).

◆ SetPlaybackStart()

void FCExpression::SetPlaybackStart ( EXPRESSION_PLAYBACK_STARTPOINTS  value)
inline

Sets the playback start point for the expression.

Lua-supported (also as property).

Parameters
valueAny of the EXPRPLAYSTART_ constants.

◆ SetRehearsalMarkOffset()

void FCExpression::SetRehearsalMarkOffset ( twobyte  value)
inline

Sets the rehearsal mark offset.

Lua-supported (also as property).

Parameters
value0 - keep on the current numbering. 1 and above - set the offset

◆ SetScaleWithEntry()

void FCExpression::SetScaleWithEntry ( bool  state)
inline

Sets if the expression should scale to entry.

Lua-supported (also as property).

◆ SetScoreAssignment()

void FCExpression::SetScoreAssignment ( bool  value)
inline

Sets if the expression is assigned to the score.

Lua-supported (also as property).

◆ SetShape()

void FCExpression::SetShape ( bool  isshape)
inline

Marks the expression as a shape or a text expression.

Lua-supported (also as property).

Parameters
isshapeIf true, marks the expression as a shape expression. If false, marks the expression as a text expression.

◆ SetStaff()

void FCExpression::SetStaff ( twobyte  staffno)
inline

Sets the assigned staff.

Lua-supported (also as property).

Parameters
staffnoThe 1-based staff number, or -1 for staff lists.

◆ SetStaffGroupID()

void FCExpression::SetStaffGroupID ( twobyte  value)
inline

Sets the "staff group" ID for the staff, which is used for expressions that are one unity in a staff lists.

Lua-supported (also as property).

◆ SetStaffListID()

void FCExpression::SetStaffListID ( twobyte  ID)
inline

Sets the staff list ID for the expression.

Lua-supported (also as property).

Parameters
IDThe staff list ID. 0 if no staff list ID.

◆ SetVerticalPos()

void FCExpression::SetVerticalPos ( twobyte  value)
inline

Sets the vertical position offset, in EVPUs.

Positive is up, negative is down.

Lua-supported (also as property).

◆ SetVisible()

void FCExpression::SetVisible ( bool  state)
inline

Sets the display state of the expression (relative to the active part).

Lua-supported (also as property).

◆ Tag()

EXTAG FCExpression::Tag ( ) const
inlineoverridevirtual

The Enigma tag for the derived class.

(Have this public so it's possible to query from the outside world.)

Implements __FCBaseData.