MUSX Document Model
|
Per-staff/per-measure overrides for the position and appearance of a measure number. More...
#include <Details.h>
Public Types | |
enum class | ForceVisibility { None , Show , Hide } |
Force-visibility options for the measure number at this location. 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 | |
MeasureNumberIndividualPositioning (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper staffId, Cmper meas, Inci inci) | |
Constructor. | |
![]() | |
DetailsBase (const DetailsBase &)=default | |
explicit default copy constructor | |
DetailsBase (DetailsBase &&) noexcept=default | |
explicit default move constructor | |
Cmper | getCmper1 () const |
Gets the cmper1 key value. | |
Cmper | getCmper2 () const |
Gets the cmper2 key value. | |
std::optional< Inci > | getInci () const |
Gets the optional array index (inci ). | |
Cmper | getRequestedPartId () const |
If this instance was retrieved from an object pool, it contains the part ID that was used to retrieve it. If this value is different than getSourcePartId, then this instance is a copy of the pool instance. | |
![]() | |
virtual | ~Base () noexcept(false)=default |
Virtual destructor for polymorphic behavior. | |
DocumentPtr | getDocument () const |
Gets a reference to the Document. | |
Cmper | getSourcePartId () const |
Gets the source partId for this instance. If an instance is fully shared with the score, the source is SCORE_PARTID. If an instance is partially shared or non shared, the source is the ID of the part that sourced it. | |
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 (const std::shared_ptr< Base > &ptrToThis) |
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 const xml::XmlElementArray< MeasureNumberIndividualPositioning > & | xmlMappingArray () |
Required for musx:: | |
Public Attributes | |
Cmper | measNumRegion {} |
The Cmper of the others::MeasureNumberRegion that this override applies to. (xml node is <region> ) | |
Evpu | xOffset {} |
Horizontal offset for the measure number. (xml node is <x1add> ) | |
Evpu | yOffset {} |
Vertical offset for the measure number. (xml node is <y1add> ) | |
Evpu | xOffset2 {} |
Horizontal offset for the measure number range under a multimeasure rest (Page View only). (xml node is <x2add> ) | |
ForceVisibility | forceVisibility {} |
Force-visibility behavior. (xml node is <forceHide> ) | |
bool | useEnclosure {} |
Whether to use an enclosure for this number. (xml node is <useEncl> ) | |
std::shared_ptr< others::Enclosure > | enclosure |
Optional enclosure settings. (xml node is <encl> ) | |
Static Public Attributes | |
static constexpr std::string_view | XmlNodeName = "measNumbIndivPos" |
The XML node name for this type. | |
Additional Inherited Members | |
![]() | |
DetailsBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper cmper1, Cmper cmper2, std::optional< Inci > inci=std::nullopt) | |
Constructs a DetailsBase object. | |
DetailsBase & | operator= (const DetailsBase &other) |
Assignment operator delegates to base, preserving OthersBase state. | |
DetailsBase & | operator= (DetailsBase &&other) noexcept |
Assignment operator delegates to base, preserving OthersBase state. | |
![]() | |
Base (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode) | |
Constructs the base class. | |
Base (const Base &)=default | |
explicit default copy constructor | |
Base (Base &&) noexcept=default | |
explicit default move constructor | |
Base & | operator= (const Base &) |
no-op copy assignment operator allows subclasses to copy their values. | |
Base & | operator= (Base &&) noexcept |
no-op move assignment operator allows subclasses to move their values. | |
Per-staff/per-measure overrides for the position and appearance of a measure number.
Cmper1 is the staff (staffId) Cmper and Cmper2 is the measure Cmper. This class is identified by the XML node name "measNumbIndivPos".
|
strong |
|
inlineexplicit |
Constructor.
document | A weak pointer to the associated document. |
partId | The part that this is for (probably always 0). |
shareMode | The sharing mode for this MeasureNumberIndividualPositioning (probably always ShareMode::All). |
staffId | The staff ID for this instance. |
meas | The measure ID for this instance. |
inci | The 0-based incident. |