Finale PDK Framework
0.54
|
Class for document-independent font information. More...
#include <ff_base.h>
Public Member Functions | |
virtual const char * | ClassName () |
Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More... | |
virtual const PDKFRAMEWORK_CLASSID | GetClassID () |
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... | |
FCFontInfo () | |
The constructor. More... | |
void | CopyFrom (FCFontInfo *pInfo) |
Copies data from another font info object. More... | |
FCFontInfo * | CreateCopy () |
Creates a copy of the font info object on the heap. More... | |
bool | LoadFontPrefs (int prefsID) |
Sets the font information to any of the preference fonts. More... | |
bool | SaveFontPrefs (int prefsID) |
Saves the font information to any of the preference fonts. More... | |
twobyte | GetSize () const |
Returns the font size as an integer number. More... | |
float | GetSizeFloat () const |
Returns the font size as a floating point (with decimal digits). More... | |
void | GetNameString (FCString *pString) const |
Gets the font name and puts it in a FCString object. More... | |
const char * | GetName () const |
Gets the font name (const C-string version). More... | |
twobyte | GetNameByID () |
Gets the internal Enigma font ID. This value is document-specific. More... | |
FLAG_16 | GetEnigmaStyles () const |
Gets the font style as standard Enigma bit storage. More... | |
bool | MakeEnigmaString (FCString *pString, FCString *pFontTagString=NULL) |
Creates an Enigma string (for use in raw strings) based on the current font information. More... | |
FCString * | CreateEnigmaString (FCString *pFontTagString=NULL) |
Returns a created FCString object that contains the font information as an Enigma string. More... | |
void | MakeEnigmaStyleString (FCString *pString) |
Makes an Enigma string (for use in raw strings) based on only the current font style information. More... | |
void | MakeEnigmaSizeString (FCString *pString) |
Makes an Enigma string (for use in raw strings) based on only the current font size information. More... | |
FCString * | CreateEnigmaStyleString () |
Creates a FCString object and creates the Enigma font style info string, based on only the current font style information. More... | |
bool | ParseEnigmaCommand (FCString *pString) |
Parses a valid Enigma font command and changes the font information accordingly. More... | |
void | ParseEnigmaFont (const EEnigmaFont *pEnigmaFont) |
Transfers the info from a Finale-internal font structure to the FCFontInfo object. | |
void | SetEnigmaStyles (FLAG_16 fontstyles) |
Sets the font style as standard Enigma bit storage. More... | |
void | SetName (const char *pszName) |
Sets the font name. More... | |
void | SetFontID (EFONTID fontID) |
Sets the internal font ID. More... | |
void | SetNameString (FCString *pString) |
Sets the font name (FCString version). More... | |
void | SetNameByID (twobyte id) |
Sets the font name by using the document's internal Enigma font ID. More... | |
void | SetSize (twobyte fontsize) |
Sets the font size as an integer value. More... | |
void | SetSizeFloat (float fontsize) |
Sets the font size as a floating point (with decimal digits) value. More... | |
void | SetAbsolute (bool state) |
Sets the absolute (fixed font) size state of the font info. More... | |
void | SetStrikeOut (bool state) |
Sets the strikeout state of the font info. More... | |
void | SetBold (bool state) |
Sets the boldface attribute of the font info. More... | |
void | SetHidden (bool state) |
Sets the hidden state of the font info. More... | |
void | SetItalic (bool state) |
Sets the italics attribute of the font info. More... | |
void | SetUnderline (bool state) |
Sets the underline attribute of the font info. More... | |
void | SetPlain () |
Clears the styles so the font doesn't use any style. More... | |
bool | IsName (const char *pszTestName) |
Checks if the font name is a perfect match to the C-string test string. More... | |
bool | IsNameString (FCString *pTestName) |
Checks if the font name is a perfect match to the test string. More... | |
bool | IsPlain () |
Returns true if the font has no special style flags. More... | |
bool | GetBold () const |
Returns true if the font style is boldface. More... | |
bool | GetItalic () const |
Returns true if the font style is italic. More... | |
bool | GetUnderline () const |
Returns true if the font style is underline. More... | |
bool | GetStrikeOut () const |
Returns true if the font style is strikeout. More... | |
bool | GetAbsolute () const |
Returns true if the font size is absolute. More... | |
bool | GetHidden () const |
Returns true if the font style is hidden (don't print). More... | |
bool | IsIdenticalTo (FCFontInfo *pCompareWith) |
Returns true if all font information is identical to the compared object. More... | |
void | MakeDefaultMusicFont () |
Changes the document's default music font. More... | |
virtual void | DebugDump () |
Outputs the class data/information for debugging purposes. More... | |
Public Member Functions inherited from __FCBase | |
__FCBase () | |
The constructor. | |
virtual | ~__FCBase () |
Virtual destructor, so all inherited classes get the virtual destructor. More... | |
void | DebugMsgDigit (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... | |
virtual void | DebugDataDump () |
Outputs a memory dump of the data block in the object for debugging purposes. More... | |
virtual void | DebugDataByteArrayDump () |
Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. More... | |
void | Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state) |
Sets a 16 bit flag in the data block. More... | |
void | Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state) |
Sets a 32 bit flag in the data block. 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... | |
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... | |
Static Public Member Functions | |
static fourbyte | GetSystemTextEncoding () |
Returns the internal Engima encoding number for the running Finale version. This value is appended to the font in Enigma strings. More... | |
Static Public Member Functions inherited from __FCBase | |
static void | DebugOutPtr (const char *pszPrefixText, void *ptr) |
Static method that outputs a line for debugging purposes. The prefix text appears with the extra ptr (in hexadeximal representation) appearing afterwards. More... | |
static void | DebugOutDigit (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, float 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... | |
Additional Inherited Members | |
Public Types inherited from __FCBase | |
enum | PDKFRAMEWORK_CLASSID { FCID_UNKNOWN = 0, FCID_ACCIDENTALMOD, FCID_ALLOTMENT, FCID_ARTICULATION, FCID_ARTICULATIONDEF, FCID_BACKWARDREPEAT, FCID_BASELINE, FCID_BEAMMOD, FCID_BEATCHARTELEMENT, 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_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_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_PERCUSSIONNOTEMOD, FCID_PIANOBRACEPREFS, FCID_PLAYBACKPREFS, FCID_RAWTEXT, FCID_REPEATPREFS, FCID_SECONDARYBEAMBREAKMOD, 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... | |
Class for document-independent font information.
This class also has some support for absolute font IDs, which is required for font operations within the same document.
FCFontInfo::FCFontInfo | ( | ) |
The constructor.
Defaults to 12 point Times New Roman.
Lua-supported.
|
inlinevirtual |
Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class.
Lua-supported.
Reimplemented from __FCBase.
void FCFontInfo::CopyFrom | ( | FCFontInfo * | pInfo | ) |
Copies data from another font info object.
Lua-supported.
|
inline |
Creates a copy of the font info object on the heap.
The caller must remove the created object from the heap after use.
Returns a created FCString object that contains the font information as an Enigma string.
The resulting Enigma string contains tags for font name, size and style.
It's the caller's responsibility to clean up the object after use.
Lua-supported.
FCString * FCFontInfo::CreateEnigmaStyleString | ( | ) |
Creates a FCString object and creates the Enigma font style info string, based on only the current font style information.
The caller must delete the created object from the heap after use.
Lua-supported.
|
virtual |
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 __FCBase.
|
inline |
Returns true if the font size is absolute.
Lua-supported (also as property).
|
inline |
Returns true if the font style is boldface.
Lua-supported (also as property).
|
inlinevirtual |
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.
Reimplemented from __FCBase.
|
inline |
Gets the font style as standard Enigma bit storage.
Lua-supported (also as property).
|
inline |
Returns true if the font style is hidden (don't print).
Lua-supported (also as property).
|
inline |
Returns true if the font style is italic.
Lua-supported (also as property).
const char * FCFontInfo::GetName | ( | ) | const |
Gets the font name (const C-string version).
This is not a recommended method on Finale 25 or later, since font names can be Unicode there. The GetNameString().
Lua-supported (also as property).
twobyte FCFontInfo::GetNameByID | ( | ) |
Gets the internal Enigma font ID. This value is document-specific.
Lua-supported.
void FCFontInfo::GetNameString | ( | FCString * | pString | ) | const |
|
inline |
Returns the font size as an integer number.
Lua-supported (also as property).
|
inline |
Returns the font size as a floating point (with decimal digits).
Lua-supported (also as property).
|
inline |
Returns true if the font style is strikeout.
Lua-supported (also as property).
|
static |
Returns the internal Engima encoding number for the running Finale version. This value is appended to the font in Enigma strings.
|
inline |
Returns true if the font style is underline.
Lua-supported (also as property).
bool FCFontInfo::IsIdenticalTo | ( | FCFontInfo * | pCompareWith | ) |
Returns true if all font information is identical to the compared object.
Lua-supported.
bool FCFontInfo::IsName | ( | const char * | pszTestName | ) |
Checks if the font name is a perfect match to the C-string test string.
Lua-supported.
pszTestName | Pointer to the font name to test for. |
bool FCFontInfo::IsNameString | ( | FCString * | pTestName | ) |
Checks if the font name is a perfect match to the test string.
Lua-supported.
pTestName | Pointer to the FCString object to test. |
|
inline |
Returns true if the font has no special style flags.
Lua-supported.
bool FCFontInfo::LoadFontPrefs | ( | int | prefsID | ) |
Sets the font information to any of the preference fonts.
This method handles the FCFontPrefs data in the background.
Lua-supported.
prefsID | Any of the FONTPREF_* constants. |
void FCFontInfo::MakeDefaultMusicFont | ( | ) |
Changes the document's default music font.
Lua-supported.
void FCFontInfo::MakeEnigmaSizeString | ( | FCString * | pString | ) |
Makes an Enigma string (for use in raw strings) based on only the current font size information.
PDK_FRAMEWORK_ENIGMASTRINGS must be defined at compile time.
Lua-supported.
pString | Pointer to the FCString object where the result will be put. |
Creates an Enigma string (for use in raw strings) based on the current font information.
The Enigma string contains tags for font name, size and style.
Lua-supported.
pString | The string object to put the result in. |
pFontTagString | Optional parameter, that contains a specific font tag with '^' but without '('. Example: ^fontTxt. If this parameter isn't defined, the "^font()" Enigma tag will be used. |
void FCFontInfo::MakeEnigmaStyleString | ( | FCString * | pString | ) |
Makes an Enigma string (for use in raw strings) based on only the current font style information.
PDK_FRAMEWORK_ENIGMASTRINGS must be defined at compile time.
Lua-supported.
pString | Pointer to the FCString object where the result will be put. |
bool FCFontInfo::ParseEnigmaCommand | ( | FCString * | pString | ) |
Parses a valid Enigma font command and changes the font information accordingly.
Lua-supported.
pString | Pointer to a FCString object containing one command. |
bool FCFontInfo::SaveFontPrefs | ( | int | prefsID | ) |
Saves the font information to any of the preference fonts.
This method handles the FCFontPrefs data in the background.
Lua-supported.
prefsID | Any of the FONTPREF_* constants. |
|
inline |
Sets the absolute (fixed font) size state of the font info.
Lua-supported (also as property).
state | True to set the absolute font size state. False to set to relative state. |
|
inline |
Sets the boldface attribute of the font info.
Lua-supported (also as property).
state | True to set the boldface font attribute. False to set to normal state. |
|
inline |
Sets the font style as standard Enigma bit storage.
Lua-supported (also as property).
void FCFontInfo::SetFontID | ( | EFONTID | fontID | ) |
Sets the internal font ID.
Please be aware that the font ID is not document-independent and it isn't fully supported by all FCFontInfo related methods and classes.
fontID | The internal font ID. |
|
inline |
Sets the hidden state of the font info.
Lua-supported (also as property).
state | True to set the hidden state. False to set to visible state. |
|
inline |
Sets the italics attribute of the font info.
Lua-supported (also as property).
state | True to set the italics font attribute. False to set to normal state. |
void FCFontInfo::SetName | ( | const char * | pszName | ) |
Sets the font name.
Lua-supported (also as property).
pszName | The C-style string name. |
void FCFontInfo::SetNameByID | ( | twobyte | id | ) |
Sets the font name by using the document's internal Enigma font ID.
Lua-supported.
void FCFontInfo::SetNameString | ( | FCString * | pString | ) |
Sets the font name (FCString version).
Lua-supported.
|
inline |
Clears the styles so the font doesn't use any style.
Lua-supported.
|
inline |
Sets the font size as an integer value.
Lua-supported (also as property).
fontsize | The font size in points, as an integer. |
|
inline |
Sets the font size as a floating point (with decimal digits) value.
Lua-supported (also as property).
fontsize | The font size in points, with decimal digits if necessary. |
|
inline |
Sets the strikeout state of the font info.
Lua-supported (also as property).
state | True to set to strikeout. False to set to normal. |
|
inline |
Sets the underline attribute of the font info.
Lua-supported (also as property).
state | True to set the underline font attribute. False to set to normal state. |