MUSX Document Model
|
An unordered map of default font settings for the document. More...
#include <Options.h>
Public Types | |
enum class | FontType { Music , Key , Clef , Time , Chord , ChordAcci , Ending , Tuplet , TextBlock , LyricVerse , LyricChorus , LyricSection , MultiMeasRest , Tablature , ChordSuffix , Expression , Repeat , Fretboard , Flags , Accis , AltNotSlash , AltNotNum , Rests , ReptDots , Noteheads , AugDots , TimePlus , Articulation , Percussion , SmartShape8va , MeasNumb , StaffNames , AbbrvStaffNames , GroupNames , SmartShape8vb , SmartShape15ma , SmartShape15mb , SmartShapeTrill , SmartShapeWiggle , AbbrvGroupNames , BendCurveFull , BendCurveWhole , BendCurveFrac , TimeParts , TimePlusParts } |
Types of fonts available for the document. More... | |
![]() | |
enum class | ShareMode { All , Partial , None } |
Describes how this instance is shared between part and score. More... | |
using | SharedNodes = std::set< std::string > |
The container type for shared nodes. | |
Public Member Functions | |
FontOptions (const DocumentWeakPtr &document, Cmper partId=0, ShareMode shareMode=ShareMode::All) | |
Constructor. | |
std::shared_ptr< FontInfo > | getFontInfo (FontType type) const |
get the FontInfo for a particular type | |
![]() | |
virtual | ~Base () noexcept(false)=default |
Virtual destructor for polymorphic behavior. | |
DocumentPtr | getDocument () const |
Gets a reference to the Document. | |
Cmper | getPartId () const |
Gets the partId for this instance (or 0 for score) | |
std::shared_ptr< others::PartDefinition > | getPartDefinition () const |
Gets the others::PartDefinition corresponding to getPartId. | |
ShareMode | getShareMode () const |
Gets the sharing mode for this instance. | |
const SharedNodes & | getUnlinkedNodes () const |
Gets the unlinked nodes for this instance. (Only populated for ShareMode::Partial ) | |
void | addUnlinkedNode (const std::string &nodeName) |
Adds a shared node for this instance. | |
virtual void | integrityCheck () |
Allows a class to determine if it has been properly contructed by the factory and fix issues that it can, such as creating default instances of contained classes. | |
virtual bool | requireAllFields () const |
Specifies if the parser should alert (print or throw) when an unknown xml tag is found for this class. | |
Static Public Member Functions | |
static std::shared_ptr< FontInfo > | getFontInfo (const DocumentPtr &document, FontType type) |
get the FontInfo for a particular type from the document pool | |
static const xml::XmlElementArray< FontOptions > & | xmlMappingArray () |
Required for musx::factory::FieldPopulator. | |
Public Attributes | |
std::unordered_map< FontType, std::shared_ptr< FontInfo > > | fontOptions |
Stores the default fonts for different elements. | |
Static Public Attributes | |
static constexpr std::string_view | XmlNodeName = "fontOptions" |
The XML node name for this type. | |
Additional Inherited Members | |
![]() | |
OptionsBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode) | |
Constructs the OptionsBase and validates XmlNodeName in the derived class. | |
![]() | |
Base (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode) | |
Constructs the base class and enforces the static constexpr XmlNodeName. | |
Base & | operator= (const Base &) |
assignment constructor: m_unlinkedNodes is intentionally omitted | |
An unordered map of default font settings for the document.
The FontOptions class stores default font settings used throughout the document. It provides functionality to manage various font attributes, such as size, style (bold, italic), and whether the font is hidden or fixed size.
|
strong |
Types of fonts available for the document.
The FontType enum represents different types of fonts used for musical and textual elements within the document.
|
inlineexplicit |
Constructor.
document | A weak pointer to the document object. |
partId | Usually 0. This parameter is needed for the generic factory routine. |
shareMode | Usually ShareMode::All . This parameter is needed for the generic factory routine. |
Constructs a FontOptions object that is associated with the provided document.
|
static |
get the FontInfo
for a particular type
type | the FontType to retrieve |
std::invalid_paremter | if the type is not found in the document |