8 #ifndef __VRV_STAFFGRP_H__
9 #define __VRV_STAFFGRP_H__
12 #include "atts_shared.h"
13 #include "atts_visual.h"
36 public AttNNumberLike,
37 public AttStaffGroupingSym,
38 public AttStaffGrpVis,
50 std::string GetClassName()
const override {
return "staffGrp"; }
69 VisibilityOptimization GetDrawingVisibility()
const {
return m_drawingVisibility; }
70 void SetDrawingVisibility(VisibilityOptimization drawingIsVisible) { m_drawingVisibility = drawingIsVisible; }
90 void SetGroupSymbol(
GrpSym *grpSym);
91 GrpSym *GetGroupSymbol() {
return m_groupSymbol; }
92 const GrpSym *GetGroupSymbol()
const {
return m_groupSymbol; }
99 bool HasLabelInfo()
const;
100 bool HasLabelAbbrInfo()
const;
110 const Label *GetLabel()
const;
111 Label *GetLabelCopy()
const;
112 LabelAbbr *GetLabelAbbr();
113 const LabelAbbr *GetLabelAbbr()
const;
114 LabelAbbr *GetLabelAbbrCopy()
const;
132 FunctorCode AcceptEnd(
Functor &functor)
override;
133 FunctorCode AcceptEnd(
ConstFunctor &functor)
const override;
140 void FilterList(ListOfConstObjects &childList)
const override;
153 VisibilityOptimization m_drawingVisibility;
This abstract class is the base class for all const functors.
Definition: functor.h:126
This abstract class is the base class for all mutable functors.
Definition: functor.h:101
This class represents a MEI grpSym.
Definition: grpsym.h:30
This class represents a basic object.
Definition: object.h:61
This class is an pseudo interface for elements maintaining a flat list of children LayerElement for p...
Definition: object.h:893
This class represents a MEI staffGrp.
Definition: staffgrp.h:39
void Reset() override
Reset the object, that is 1) removing all children and 2) resetting all attributes.
std::pair< StaffDef *, StaffDef * > GetFirstLastStaffDef()
Get first and last staffDef of the staff group without visibility optimization set to hidden.
int GetMaxStaffSize() const
Return the maximum staff size in the staffGrp (100 if empty)
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
int GetInsertOrderFor(ClassId classId) const override
Return an order for the given ClassId.
Object * Clone() const override
Method call for copying child classes.
Definition: staffgrp.h:48
void FilterList(ListOfConstObjects &childList) const override
Filter the flat list and keep only StaffDef elements.
void SetEverythingVisible()
Set visibility of the group and all of its nested children to SHOW.
bool IsSupportedChild(ClassId classId) override
Base method for checking if a child can be added.