Finale PDK Framework 0.77
Power Up Your Finale Music Software
Loading...
Searching...
No Matches
FCGroup Class Reference

Encapsulates a staff group. More...

#include <ff_details.h>

+ Inheritance diagram for FCGroup:

Public Types

enum  FCGROUP_BRACKETS {
  GRBRAC_NONE = BRACKET_NONE , GRBRAC_PLAIN = BRACKET_PLAINBRAC , GRBRAC_CHORUS = BRACKET_CHORUSBRAC , GRBRAC_PIANO = BRACKET_PIANOBRAC ,
  GRBRAC_REVERSECHORUS = BRACKET_REVCHORUSBRAC , GRBRAC_REVERSEPIANO = BRACKET_REVPIANOBRAC , GRBRAC_CURVEDCHORUS = BRACKET_CURVECHORUSBRAC , GRBRAC_REVERSECURVEDCHORUS = BRACKET_REVCURVECHORUSBRAC ,
  GRBRAC_DESK = BRACKET_DESKBRAC , GRBRAC_REVERSEDESK = BRACKET_REVDESKBRAC
}
 Constants for group bracket styles, for use with GetBracketStyle() and SetBracketStyle(). More...
 
enum  GROUPSTAFFHIDES { GROUPSTAFFHIDE_NORMAL = 0 , GROUPSTAFFHIDE_ALLEMPTY , GROUPSTAFFHIDE_NEVER }
 The constants for "optimization" of staves in a group. More...
 
enum  GROUPBARLINESTYLES { GROUPBARLINESTYLE_ONLYON = 0 , GROUPBARLINESTYLE_ONLYBETWEEN , GROUPBARLINESTYLE_THROUGH }
 The group barline styles, used by FCGroup::GetDrawBarlineMode() and FCGroup::SetDrawBarlineMode(). 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.
 
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.
 
 FCGroup ()
 The constructor.
 
int CalcStaffIndex (twobyte staff)
 Returns the 0-based index within the group for a staff.
 
int CalcStaffSpan ()
 Returns the number of staves contained in the group, based on the global list of staves.
 
bool ContainsStaff (twobyte staff)
 Returns true if the staff belongs to the group.
 
FCStringCreateAbbreviatedNameString ()
 Creates a string object of the abbreviated group name (including the Enigma text tags).
 
FCStringCreateFullNameString ()
 Creates a string object of the full group name (including the Enigma text tags).
 
FCStringCreateTrimmedFullNameString ()
 Creates a string object of the trimmed full group name.
 
FCStringCreateDisplayFullNameString ()
 Creates a group name for display purposes.
 
FCMusicRegionCreateMusicRegion () const
 Creates a region corresponding to the FCGroup instance in Scroll View.
 
CMPER GetAbbreviatedNameID () const
 Returns the raw text ID for the abbreviated group name.
 
bool GetFullNameExpandSingle () const
 
bool GetAbbreviatedNameExpandSingle () const
 
FCGROUP_BRACKETS GetBracketStyle () const
 Returns the bracket style (any of the GRBRAC_* constants, such as GRBRAC_PIANO).
 
Evpu16 GetBracketHorizontalPos () const
 Returns the horizontal position/offset for the bracket.
 
Evpu16 GetBracketVerticalTopPos () const
 Returns the vertical top position/offset for the bracket.
 
Evpu16 GetBracketVerticalBottomPos () const
 Returns the vertical bottom position/offset for the bracket.
 
bool GetBracketSingleStaff () const
 Returns the "Bracket on single staves" state for the bracket.
 
twobyte GetEndStaff () const
 Returns the end staff number for the group.
 
CMPER GetFullNameID () const
 Returns the raw text ID for the full group name.
 
bool GetUseFullNamePositioning () const
 Returns if the individual positioning information should be used for full names in the group.
 
bool GetUseAbbreviatedNamePositioning () const
 Returns if the individual positioning information should be used for abbreviated names in the group.
 
Evpu16 GetFullNameHorizontalOffset () const
 Returns the horizontal adjustment offset for the full group name (compared to the default position).
 
Evpu16 GetAbbreviatedNameHorizontalOffset () const
 Returns the horizontal adjustment offset for the abbreviated group name (compared to the default position).
 
Evpu16 GetFullNameVerticalOffset () const
 Returns the vertical adjustment offset for the full group name (compared to the default position).
 
Evpu16 GetAbbreviatedNameVerticalOffset () const
 Returns the vertical adjustment offset for the abbreviated group name (compared to the default position).
 
twobyte GetStartStaff () const
 Returns the start staff number for the group.
 
twobyte GetItemID () const
 Returns the saved ID for the group.
 
twobyte GetBarlineStyle () const
 Returns the barline style for the group.
 
bool GetBarlineUse () const
 Returns true if "Use Alternating Barline" is set for the group.
 
twobyte GetBarlineShapeID () const
 Returns the custom barline shape ID, it any.
 
GROUPSTAFFHIDES GetEmptyStaffHide () const
 Returns the optimization setting for the group.
 
bool GetShowGroupName () const
 Returns the "Show Group Name" state.
 
GROUPBARLINESTYLES GetDrawBarlineMode () const
 Returns how barlines are drawn for the group.
 
FLAG_16 GetFullNameJustify () const
 Returns the justification for the group's full name text.
 
FLAG_16 GetAbbreviatedNameJustify () const
 Returns the justification for the group's abbreviated name text.
 
FLAG_16 GetFullNameAlign () const
 Returns the alignment for the group's full name text.

 
FLAG_16 GetAbbreviatedNameAlign () const
 Returns the alignment for the group's abbreviated name text.
 
bool HasFullName ()
 Returns true if a full name is available.
 
bool HasAbbreviatedName ()
 Returns true if an abbreivated name is available.
 
twobyte GetEndMeasure () const
 Returns the end measure for the group (for Finale 2011 and later).
 
twobyte GetStartMeasure () const
 Returns the start measure for the group (for Finale 2011 and later)
 
void SetEndMeasure (twobyte value)
 Sets the end measure for the group (for Finale 2011 and later).
 
void SetStartMeasure (twobyte value)
 Sets the start measure for the group (for Finale 2011 and later).
 
void SetStartStaff (twobyte staffno)
 Sets the start staff number for the group.
 
void SetEndStaff (twobyte staffno)
 Sets the end staff number for the group.
 
bool SaveNewAbbreviatedNameBlock (FCString *pString)
 Saves a new raw text block (both a raw text and the connected text block) and assigns it to the full name.
 
bool SaveNewFullNameBlock (FCString *pString)
 Saves a new raw text block (both a raw text and the connected text block) and assigns it to the full name.
 
void SetUseFullNamePositioning (bool state)
 Sets if the individual positioning information should be used for full names in the group.
 
void SetUseAbbreviatedNamePositioning (bool state)
 Sets if the individual positioning information should be used for abbreviated names in the group.
 
void SetFullNameHorizontalOffset (Evpu16 value)
 Sets the horizontal adjustment offset for the full group name (compared to the default position).
 
void SetAbbreviatedNameHorizontalOffset (Evpu16 value)
 Sets the horizontal adjustment offset for the abbreviated group name (compared to the default position).
 
void SetFullNameVerticalOffset (Evpu16 value)
 Sets the vertical adjustment offset for the full group name (compared to the default position).
 
void SetAbbreviatedNameVerticalOffset (Evpu16 value)
 Sets the vertical adjustment offset for the abbreviated group name (compared to the default position).
 
void SetBarlineStyle (twobyte barline)
 Sets the barline style for the group.
 
void SetBarlineUse (bool value)
 Sets the "Use Alternating Barline" state for the group.
 
void SetBarlineShapeID (twobyte shapeID)
 Sets the custom barline shape ID.
 
void SetEmptyStaffHide (GROUPSTAFFHIDES value)
 Sets the optimization setting for the group.
 
void SetShowGroupName (bool state)
 Sets the "Show Group Name" state.
 
void SetDrawBarlineMode (GROUPBARLINESTYLES value)
 Sets how barlines are drawn for the group.
 
void SetFullNameJustify (FLAG_16 value)
 Sets the justification for the group's full name text.
 
void SetAbbreviatedNameJustify (FLAG_16 value)
 Sets the justification for the group's abbreviated name text.
 
void SetFullNameAlign (FLAG_16 value)
 Returns the alignment for the group's full name text.
 
void SetAbbreviatedNameAlign (FLAG_16 value)
 Returns the alignment for the group's abbreviated name text.
 
void SetFullNameExpandSingle (bool state)
 
void SetAbbreviatedNameExpandSingle (bool state)
 
void SetBracketStyle (FCGROUP_BRACKETS bracketid)
 Sets the bracket style (any of the GRBRAC_* defines, such as GRBRAC_PIANO).
 
void SetBracketHorizontalPos (Evpu16 value)
 Sets the horizontal position/offset for the bracket.
 
void SetBracketVerticalTopPos (Evpu16 value)
 Sets the vertical top position/offset for the bracket.
 
void SetBracketVerticalBottomPos (Evpu16 value)
 Sets the vertical bottom position/offset for the bracket.
 
void SetBracketSingleStaff (bool state)
 Sets the "Bracket on single staves" state for the bracket.
 
void DebugDump () override
 Outputs the class data/information for debugging purposes.
 
- Public Member Functions inherited from __FCNoInciDetail
bool Load (CMPER cmper1, CMPER cmper2)
 Loads a record with cmper1 and cmper2.
 
virtual bool SaveNew (CMPER cmper1)
 Saves a new record at cmper1.
 
- Public Member Functions inherited from __FCDetail
- Public Member Functions inherited from __FCBaseData
EDOCID GetConnectedDocID () const
 Returns the document ID that was connected to the last load/save of the data.
 
bool VerifyConnectedDocID ()
 Checks that the stored document ID for the data object matches the current document's ID.
 
virtual EXTAG Tag () const =0
 The Enigma tag for the derived class.
 
virtual EVERSION EnigmaVersion () const
 The Enigma version for save/load/create/delete operations.
 
virtual int DataSizeLoad () const =0
 Returns the data size for the data structure that should be loaded.
 
virtual int DataSizeSave () const
 Returns the data size for the data structure that should be saved or created.
 
void _CloneFrom (__FCBaseData *pSource)
 For internal use only. Copies object data (except data block) from another object.
 
virtual void CloneMemoryFrom (__FCBaseData *pSource)
 
const EDataID * _GetDataID ()
 Intended ONLY for the _CloneFrom implementation.
 
int _GetLoadedSize () const
 Intended ONLY for the _CloneFrom implementation.
 
const void * GetDataBlock ()
 Intended ONLY for the _CloneFrom implementation.
 
EXTAG GetCustomTag () const
 Returns the custom Enigma tag, if any.
 
void SetCustomTag (EXTAG tag)
 Sets the custom Enigma tag, for classes that support multiple Enigma tags.
 
 __FCBaseData ()
 The constructor.
 
virtual ~__FCBaseData ()
 Virtual destructor.
 
virtual bool Save ()
 Saves the currently loaded to its current location.
 
virtual bool Reload ()
 Refreshes the data for the object, to synch the data with Finale's current data.
 
virtual bool DeleteData ()
 Deletes the associated data from Finale's database. Be careful when deleting multiple objects.
 
virtual bool DeepDeleteData ()
 Deletes data and all data that's connected to the object.
 
virtual bool LoadLast ()
 Loads the very last element in the database, if any.
 
virtual bool LoadNext ()
 Loads the next element from the database, if any.
 
virtual bool LoadPrevious ()
 Loads the previous element in the database, if any.
 
bool RelinkToCurrentView ()
 Relinks the contents in the current view so that the score and part(s) match.
 
bool RelinkToScore ()
 Relinks all parts to the contents of the score.
 
__FCBaseDataCreateClone ()
 Creates an identical copy of an object.
 
void DebugDataDump () override
 Outputs a memory dump of the data block in the object for debugging purposes.
 
void DebugDataByteArrayDump () override
 Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array.
 
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.
 
- 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.
 
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.
 
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.
 
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.
 
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

- 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 __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!
 
virtual __FCBaseDataCreateObject ()=0
 Creates a new instance of the object.
 
bool DataIsLoaded () const
 Returns true is any data has been loaded into the object.
 
void _TagDocumentID ()
 For internal use only.
 
- 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.
 
EDataID _dataid
 The EdataID for the last loaded/saved object.
 

Detailed Description

Encapsulates a staff group.

There is a big difference on how groups are loaded/saved in Finale 2011 and above, compared with earlier Finale versions. In pre-2011 groups are connected to a specific staff system for optimized systems (or to staff set 0 if it's a global group). In Finale 2011, all groups are saved to the global staff set (0) and FCGroups.LoadAll() works.

With versions of Finale after Finale 2011, the __FCNoInciDetail::Load method requires 0 in the first cmper and the group id in the second cmper.

Please also note that Finale 2011 and later contains an optimization when adjacent group regions are saved: if there is no difference in settings between two adjacent groups, they will automatically be merged as one.

Member Enumeration Documentation

◆ FCGROUP_BRACKETS

Constants for group bracket styles, for use with GetBracketStyle() and SetBracketStyle().

Lua-supported.

Enumerator
GRBRAC_NONE 

No bracket

GRBRAC_PLAIN 

Plain group bracket

GRBRAC_CHORUS 

Chorus bracket

GRBRAC_PIANO 

Piano brace

GRBRAC_REVERSECHORUS 

Reversed chorus bracket

GRBRAC_REVERSEPIANO 

Reversed piano brace

GRBRAC_CURVEDCHORUS 

Curved chorus bracket

GRBRAC_REVERSECURVEDCHORUS 

Reversed curved chorus bracket

GRBRAC_DESK 

Desk bracket (thin line with 90 degrees angle)

GRBRAC_REVERSEDESK 

Reversed desk bracket

◆ GROUPBARLINESTYLES

The group barline styles, used by FCGroup::GetDrawBarlineMode() and FCGroup::SetDrawBarlineMode().

Lua-supported.

Enumerator
GROUPBARLINESTYLE_ONLYON 

Draw barlines on the staves, but not between.

GROUPBARLINESTYLE_ONLYBETWEEN 

Draw group barlines between staves, but not on the staves.

GROUPBARLINESTYLE_THROUGH 

Draw group barlines through the full group.

◆ GROUPSTAFFHIDES

The constants for "optimization" of staves in a group.

Lua-supported.

Enumerator
GROUPSTAFFHIDE_NORMAL 

Normal optimization of staves

GROUPSTAFFHIDE_ALLEMPTY 

Only remove if all staves are empty

GROUPSTAFFHIDE_NEVER 

Never remove staves from the group

Constructor & Destructor Documentation

◆ FCGroup()

FCGroup::FCGroup ( )
inline

The constructor.

Lua-supported.

Member Function Documentation

◆ CalcStaffIndex()

int FCGroup::CalcStaffIndex ( twobyte staff)

Returns the 0-based index within the group for a staff.

The top-most staff in the group gets index 0, the staff below gets 1, and so on.

Lua-supported.

Parameters
staffThe staff number.
Returns
-1 if the staff isn't found in the group. Otherwise, the 0-based index.

◆ CalcStaffSpan()

int FCGroup::CalcStaffSpan ( )

Returns the number of staves contained in the group, based on the global list of staves.

Lua-supported.

◆ ClassName()

const char * FCGroup::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 __FCNoInciDetail.

◆ ContainsStaff()

bool FCGroup::ContainsStaff ( twobyte staff)

Returns true if the staff belongs to the group.

Lua-supported.

◆ CreateAbbreviatedNameString()

FCString * FCGroup::CreateAbbreviatedNameString ( )

Creates a string object of the abbreviated group name (including the Enigma text tags).

Lua-supported.

Returns
Pointer to a created string object. This pointer must be deleted from the heap after use.

◆ CreateDisplayFullNameString()

FCString * FCGroup::CreateDisplayFullNameString ( )

Creates a group name for display purposes.

It removes all the Enigma font tags. It also expand the flat/sharp text inserts to text symbols.

It also supports the auto-numbering of groups on Finale 2012 and above (if the 2012 PDK or above is used).

Lua-supported.

Returns
Pointer to a created string object. This pointer must be deleted from the heap after use.

◆ CreateFullNameString()

FCString * FCGroup::CreateFullNameString ( )

Creates a string object of the full group name (including the Enigma text tags).

Lua-supported.

Returns
Pointer to a created string object. This pointer must be deleted from the heap after use.

◆ CreateMusicRegion()

FCMusicRegion * FCGroup::CreateMusicRegion ( ) const

Creates a region corresponding to the FCGroup instance in Scroll View.

You can use this, for example, to iterate through the staves defined for the FCGroup.

Lua-supported (0.63).

Returns
Pointer to a created FCMusicRegion object or NULL if error. Callers other than Lua scripts must delete this pointer from the heap after use.

◆ CreateTrimmedFullNameString()

FCString * FCGroup::CreateTrimmedFullNameString ( )

Creates a string object of the trimmed full group name.

Lua-supported.

  • Returns
    Pointer to a created string object. This pointer must be deleted from the heap after use.

◆ DebugDump()

void FCGroup::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 __FCNoInciDetail.

◆ GetAbbreviatedNameAlign()

FLAG_16 FCGroup::GetAbbreviatedNameAlign ( ) const
inline

Returns the alignment for the group's abbreviated name text.

Lua-supported (also as property).

Returns
Any of the TEXTHORIZALIGN_ constants (from the FCPageText class)

◆ GetAbbreviatedNameExpandSingle()

bool FCGroup::GetAbbreviatedNameExpandSingle ( ) const
inline

Returns if single words should be expanded for abbreviated group names.

Lua-supported (also as property).

◆ GetAbbreviatedNameHorizontalOffset()

Evpu16 FCGroup::GetAbbreviatedNameHorizontalOffset ( ) const
inline

Returns the horizontal adjustment offset for the abbreviated group name (compared to the default position).

This setting is used only if SetUseAbbreviatedNamePositioning is true.

Lua-supported (also as property).

◆ GetAbbreviatedNameID()

CMPER FCGroup::GetAbbreviatedNameID ( ) const
inline

Returns the raw text ID for the abbreviated group name.

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

◆ GetAbbreviatedNameJustify()

FLAG_16 FCGroup::GetAbbreviatedNameJustify ( ) const
inline

Returns the justification for the group's abbreviated name text.

Lua-supported (also as property).

Returns
Any of the TEXTJUSTIFY_ constants (from the FCTextBlock class)

◆ GetAbbreviatedNameVerticalOffset()

Evpu16 FCGroup::GetAbbreviatedNameVerticalOffset ( ) const
inline

Returns the vertical adjustment offset for the abbreviated group name (compared to the default position).

This setting is used only if SetUseAbbreviatedNamePositioning is true.

Lua-supported (also as property).

◆ GetBarlineShapeID()

twobyte FCGroup::GetBarlineShapeID ( ) const

Returns the custom barline shape ID, it any.

Lua-supported (also as property).

Returns
If a custom barline isn't used, 0 is returned. Otherwise, the ID to be used with the FCShapeDef class.

◆ GetBarlineStyle()

twobyte FCGroup::GetBarlineStyle ( ) const

Returns the barline style for the group.

Lua-supported (also as property) (0.55).

Returns
A BARLINE_* constant.

◆ GetBarlineUse()

bool FCGroup::GetBarlineUse ( ) const
inline

Returns true if "Use Alternating Barline" is set for the group.

Lua-supported (also as property).

◆ GetBracketHorizontalPos()

Evpu16 FCGroup::GetBracketHorizontalPos ( ) const
inline

Returns the horizontal position/offset for the bracket.

Lua-supported (also as property).

◆ GetBracketSingleStaff()

bool FCGroup::GetBracketSingleStaff ( ) const
inline

Returns the "Bracket on single staves" state for the bracket.

Lua-supported (also as property).

◆ GetBracketStyle()

FCGROUP_BRACKETS FCGroup::GetBracketStyle ( ) const
inline

Returns the bracket style (any of the GRBRAC_* constants, such as GRBRAC_PIANO).

Lua-supported (also as property).

◆ GetBracketVerticalBottomPos()

Evpu16 FCGroup::GetBracketVerticalBottomPos ( ) const
inline

Returns the vertical bottom position/offset for the bracket.

Lua-supported (also as property).

◆ GetBracketVerticalTopPos()

Evpu16 FCGroup::GetBracketVerticalTopPos ( ) const
inline

Returns the vertical top position/offset for the bracket.

Lua-supported (also as property).

◆ GetClassID()

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

◆ GetDrawBarlineMode()

GROUPBARLINESTYLES FCGroup::GetDrawBarlineMode ( ) const
inline

Returns how barlines are drawn for the group.

Lua-supported (also as property).

Returns
Any of the GROUPBARLINESTYLE_ constants

◆ GetEmptyStaffHide()

GROUPSTAFFHIDES FCGroup::GetEmptyStaffHide ( ) const
inline

Returns the optimization setting for the group.

Lua-supported (also as property).

Returns
Any of the GROUPSTAFFHIDE_ constants.

◆ GetEndMeasure()

twobyte FCGroup::GetEndMeasure ( ) const
inline

Returns the end measure for the group (for Finale 2011 and later).

If "all measures" is set, this has a value of 32767.

Lua-supported (also as property).

◆ GetEndStaff()

twobyte FCGroup::GetEndStaff ( ) const
inline

Returns the end staff number for the group.

Lua-supported (also as property).

◆ GetFullNameAlign()

FLAG_16 FCGroup::GetFullNameAlign ( ) const
inline

Returns the alignment for the group's full name text.

Lua-supported (also as property).

Returns
Any of the TEXTHORIZALIGN_ constants (from the FCPageText class)

◆ GetFullNameExpandSingle()

bool FCGroup::GetFullNameExpandSingle ( ) const
inline

Returns if single words should be expanded for full group names.

Lua-supported (also as property).

◆ GetFullNameHorizontalOffset()

Evpu16 FCGroup::GetFullNameHorizontalOffset ( ) const
inline

Returns the horizontal adjustment offset for the full group name (compared to the default position).

This setting is used only if SetUseFullNamePositioning is true.

Lua-supported (also as property).

◆ GetFullNameID()

CMPER FCGroup::GetFullNameID ( ) const
inline

Returns the raw text ID for the full group name.

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

◆ GetFullNameJustify()

FLAG_16 FCGroup::GetFullNameJustify ( ) const
inline

Returns the justification for the group's full name text.

Lua-supported (also as property).

Returns
Any of the TEXTJUSTIFY_ constants (from the FCTextBlock class)

◆ GetFullNameVerticalOffset()

Evpu16 FCGroup::GetFullNameVerticalOffset ( ) const
inline

Returns the vertical adjustment offset for the full group name (compared to the default position).

This setting is used only if SetUseFullNamePositioning is true.

Lua-supported (also as property).

◆ GetItemID()

twobyte FCGroup::GetItemID ( ) const
inline

Returns the saved ID for the group.

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

◆ GetShowGroupName()

bool FCGroup::GetShowGroupName ( ) const
inline

Returns the "Show Group Name" state.

Lua-supported (also as property).

◆ GetStartMeasure()

twobyte FCGroup::GetStartMeasure ( ) const
inline

Returns the start measure for the group (for Finale 2011 and later)

If "all measures" is set, this has a value of 1.

Lua-supported (also as property).

◆ GetStartStaff()

twobyte FCGroup::GetStartStaff ( ) const
inline

Returns the start staff number for the group.

Lua-supported (also as property).

◆ GetUseAbbreviatedNamePositioning()

bool FCGroup::GetUseAbbreviatedNamePositioning ( ) const
inline

Returns if the individual positioning information should be used for abbreviated names in the group.

Lua-supported (also as property).

◆ GetUseFullNamePositioning()

bool FCGroup::GetUseFullNamePositioning ( ) const
inline

Returns if the individual positioning information should be used for full names in the group.

Lua-supported (also as property).

◆ HasAbbreviatedName()

bool FCGroup::HasAbbreviatedName ( )
inline

Returns true if an abbreivated name is available.

Lua-supported.

◆ HasFullName()

bool FCGroup::HasFullName ( )
inline

Returns true if a full name is available.

Lua-supported.

◆ SaveNewAbbreviatedNameBlock()

bool FCGroup::SaveNewAbbreviatedNameBlock ( FCString * pString)

Saves a new raw text block (both a raw text and the connected text block) and assigns it to the full name.

This does not save the group, the group needs to be save separately for the text block changes to take effect.

Lua-supported.

◆ SaveNewFullNameBlock()

bool FCGroup::SaveNewFullNameBlock ( FCString * pString)

Saves a new raw text block (both a raw text and the connected text block) and assigns it to the full name.

This does not save the group, the group needs to be save separately for the text block changes to take effect.

Lua-supported.

◆ SetAbbreviatedNameAlign()

void FCGroup::SetAbbreviatedNameAlign ( FLAG_16 value)
inline

Returns the alignment for the group's abbreviated name text.

Lua-supported (also as property).

Parameters
valueAny of the TEXTHORIZALIGN_ constants (from the FCPageText class)

◆ SetAbbreviatedNameExpandSingle()

void FCGroup::SetAbbreviatedNameExpandSingle ( bool state)
inline

Sets if single words should be expanded for abbreviated group names.

Lua-supported (also as property).

◆ SetAbbreviatedNameHorizontalOffset()

void FCGroup::SetAbbreviatedNameHorizontalOffset ( Evpu16 value)
inline

Sets the horizontal adjustment offset for the abbreviated group name (compared to the default position).

This setting is used only if SetUseAbbreviatedNamePositioning is true.

Lua-supported (also as property).

◆ SetAbbreviatedNameJustify()

void FCGroup::SetAbbreviatedNameJustify ( FLAG_16 value)
inline

Sets the justification for the group's abbreviated name text.

Lua-supported (also as property).

Parameters
valueAny of the TEXTJUSTIFY_ constants (from the FCTextBlock class)

◆ SetAbbreviatedNameVerticalOffset()

void FCGroup::SetAbbreviatedNameVerticalOffset ( Evpu16 value)
inline

Sets the vertical adjustment offset for the abbreviated group name (compared to the default position).

This setting is used only if SetUseAbbreviatedNamePositioning is true.

Lua-supported (also as property).

◆ SetBarlineShapeID()

void FCGroup::SetBarlineShapeID ( twobyte shapeID)
inline

Sets the custom barline shape ID.

Lua-supported (also as property).

◆ SetBarlineStyle()

void FCGroup::SetBarlineStyle ( twobyte barline)

Sets the barline style for the group.

Lua-supported (also as property) (0.55).

Parameters
barlineAny of the BARLINE_* constants. Note that BARLINE_SHAPE is not supported by the Finale U.I., so it is recommended not to use this.

◆ SetBarlineUse()

void FCGroup::SetBarlineUse ( bool value)
inline

Sets the "Use Alternating Barline" state for the group.

Lua-supported (also as property).

◆ SetBracketHorizontalPos()

void FCGroup::SetBracketHorizontalPos ( Evpu16 value)
inline

Sets the horizontal position/offset for the bracket.

Lua-supported (also as property).

◆ SetBracketSingleStaff()

void FCGroup::SetBracketSingleStaff ( bool state)
inline

Sets the "Bracket on single staves" state for the bracket.

Lua-supported (also as property).

◆ SetBracketStyle()

void FCGroup::SetBracketStyle ( FCGROUP_BRACKETS bracketid)
inline

Sets the bracket style (any of the GRBRAC_* defines, such as GRBRAC_PIANO).

Lua-supported (also as property).

◆ SetBracketVerticalBottomPos()

void FCGroup::SetBracketVerticalBottomPos ( Evpu16 value)
inline

Sets the vertical bottom position/offset for the bracket.

Lua-supported (also as property).

◆ SetBracketVerticalTopPos()

void FCGroup::SetBracketVerticalTopPos ( Evpu16 value)
inline

Sets the vertical top position/offset for the bracket.

Lua-supported (also as property).

◆ SetDrawBarlineMode()

void FCGroup::SetDrawBarlineMode ( GROUPBARLINESTYLES value)
inline

Sets how barlines are drawn for the group.

Lua-supported (also as property).

Parameters
valueAny of the GROUPBARLINESTYLE_ constants

◆ SetEmptyStaffHide()

void FCGroup::SetEmptyStaffHide ( GROUPSTAFFHIDES value)
inline

Sets the optimization setting for the group.

Lua-supported (also as property).

Parameters
valueAny of the GROUPSTAFFHIDE_ constants.

◆ SetEndMeasure()

void FCGroup::SetEndMeasure ( twobyte value)
inline

Sets the end measure for the group (for Finale 2011 and later).

If "all measures" is set, this has a value of 32767.

Lua-supported (also as property).

◆ SetEndStaff()

void FCGroup::SetEndStaff ( twobyte staffno)
inline

Sets the end staff number for the group.

Lua-supported (also as property).

◆ SetFullNameAlign()

void FCGroup::SetFullNameAlign ( FLAG_16 value)
inline

Returns the alignment for the group's full name text.

Lua-supported (also as property).

Parameters
valueAny of the TEXTHORIZALIGN_ constants (from the FCPageText class)

◆ SetFullNameExpandSingle()

void FCGroup::SetFullNameExpandSingle ( bool state)
inline

Sets if single words should be expanded for full group names.

Lua-supported (also as property).

◆ SetFullNameHorizontalOffset()

void FCGroup::SetFullNameHorizontalOffset ( Evpu16 value)
inline

Sets the horizontal adjustment offset for the full group name (compared to the default position).

This setting is used only if GetUseFullNamePositioning is true.

Lua-supported (also as property).

◆ SetFullNameJustify()

void FCGroup::SetFullNameJustify ( FLAG_16 value)
inline

Sets the justification for the group's full name text.

Lua-supported (also as property).

Parameters
valueAny of the TEXTJUSTIFY_ constants (from the FCTextBlock class)

◆ SetFullNameVerticalOffset()

void FCGroup::SetFullNameVerticalOffset ( Evpu16 value)
inline

Sets the vertical adjustment offset for the full group name (compared to the default position).

This setting is used only if GetUseFullNamePositioning is true.

Lua-supported (also as property).

◆ SetShowGroupName()

void FCGroup::SetShowGroupName ( bool state)
inline

Sets the "Show Group Name" state.

Lua-supported (also as property).

◆ SetStartMeasure()

void FCGroup::SetStartMeasure ( twobyte value)
inline

Sets the start measure for the group (for Finale 2011 and later).

If "all measures" is set, this has a value of 1.

Lua-supported (also as property).

◆ SetStartStaff()

void FCGroup::SetStartStaff ( twobyte staffno)
inline

Sets the start staff number for the group.

Lua-supported (also as property).

◆ SetUseAbbreviatedNamePositioning()

void FCGroup::SetUseAbbreviatedNamePositioning ( bool state)
inline

Sets if the individual positioning information should be used for abbreviated names in the group.

Lua-supported (also as property).

◆ SetUseFullNamePositioning()

void FCGroup::SetUseFullNamePositioning ( bool state)
inline

Sets if the individual positioning information should be used for full names in the group.

Lua-supported (also as property).