@@ -334,14 +334,23 @@ void EditStyle::classBegin()
334334 groupBracketTextAlign->addButton (groupBracketTextCenter, 0 );
335335 groupBracketTextAlign->addButton (groupBracketTextRight, 2 );
336336
337+ QButtonGroup* groupBracketOrientation = new QButtonGroup (this );
338+ groupBracketOrientation->addButton (groupBracketTextVertical, 0 );
339+ groupBracketOrientation->addButton (groupBracketTextHorizontal, 1 );
340+
337341 QButtonGroup* groupBracketTextPos = new QButtonGroup (this );
338342 groupBracketTextPos->addButton (groupBracketHangIntoMargin, true );
339343 groupBracketTextPos->addButton (groupBracketKeepInMargin, false );
340344
341- connect (groupBracketTextAlign, &QButtonGroup::buttonClicked, this , [&](QAbstractButton*) {
342- groupBracketHangIntoMargin->setEnabled (!groupBracketTextRight->isChecked ());
343- groupBracketKeepInMargin->setEnabled (!groupBracketTextRight->isChecked ());
344- });
345+ auto updateHangIntoMarginEnabled = [&]() {
346+ bool rightAlign = groupBracketTextRight->isChecked ();
347+ bool vertical = groupBracketTextVertical->isChecked ();
348+ groupBracketHangIntoMargin->setEnabled (vertical && !rightAlign);
349+ groupBracketKeepInMargin->setEnabled (vertical && !rightAlign);
350+ };
351+
352+ connect (groupBracketTextAlign, &QButtonGroup::buttonClicked, this , updateHangIntoMarginEnabled);
353+ connect (groupBracketOrientation, &QButtonGroup::buttonClicked, this , updateHangIntoMarginEnabled);
345354
346355 // ====================================================
347356 // Style widgets
@@ -505,8 +514,9 @@ void EditStyle::classBegin()
505514 { StyleId::groupBracketHookLen, false , groupBracketHookLen, groupBracketHookLenReset },
506515 { StyleId::groupBracketTextAlign, false , groupBracketTextAlign, 0 },
507516 { StyleId::groupBracketHangTextIntoMargin, false , groupBracketTextPos, 0 },
508- { StyleId::groupBracketDistanceToNames, false , groupBracketDistanceToNames },
509- { StyleId::groupBracketDistanceToGroupBracket, false , groupBracketDistanceToBrackets },
517+ { StyleId::groupBracketDistanceToNames, false , groupBracketDistanceToNames, groupBracketDistanceToNamesReset },
518+ { StyleId::groupBracketDistanceToGroupBracket, false , groupBracketDistanceToBrackets, groupBracketDistanceToBracketsReset },
519+ { StyleId::groupBracketTextOrientation, false , groupBracketOrientation },
510520
511521 { StyleId::dividerLeft, false , dividerLeft, 0 },
512522 { StyleId::dividerLeftX, false , dividerLeftX, dividerLeftXReset },
@@ -1815,6 +1825,7 @@ PropertyValue EditStyle::getValue(StyleId idx)
18151825 case P_TYPE::PLACEMENT_H:
18161826 case P_TYPE::PLACEMENT_V:
18171827 case P_TYPE::DIRECTION_H:
1828+ case P_TYPE::ORIENTATION:
18181829 case P_TYPE::LINE_TYPE:
18191830 case P_TYPE::TIMESIG_PLACEMENT:
18201831 case P_TYPE::TIMESIG_STYLE:
@@ -1935,6 +1946,7 @@ void EditStyle::setValues()
19351946 case P_TYPE::PLACEMENT_H:
19361947 case P_TYPE::PLACEMENT_V:
19371948 case P_TYPE::DIRECTION_H:
1949+ case P_TYPE::ORIENTATION:
19381950 case P_TYPE::BARLINE_TYPE:
19391951 case P_TYPE::LINE_TYPE:
19401952 case P_TYPE::HOOK_TYPE:
@@ -2084,8 +2096,10 @@ void EditStyle::setValues()
20842096 updateParenthesisIndicatingTiesGroupState ();
20852097
20862098 bool textBracketRight = styleValue (StyleId::groupBracketTextAlign).value <DirectionH>() == DirectionH::RIGHT;
2087- groupBracketHangIntoMargin->setEnabled (!textBracketRight);
2088- groupBracketKeepInMargin->setEnabled (!textBracketRight);
2099+ bool vertical = styleValue (StyleId::groupBracketTextOrientation).value <mu::engraving::Orientation>()
2100+ == mu::engraving::Orientation::VERTICAL;
2101+ groupBracketHangIntoMargin->setEnabled (vertical && !textBracketRight);
2102+ groupBracketKeepInMargin->setEnabled (vertical && !textBracketRight);
20892103}
20902104
20912105// ---------------------------------------------------------
0 commit comments