Skip to content

Commit

Permalink
Merge pull request #4751 from mattmcclinch/280492-fret-number
Browse files Browse the repository at this point in the history
fix #280492: Fretboard diagrams: Offset needs to be renamed and should correspond with the diagram
  • Loading branch information
anatoly-os committed Mar 4, 2019
2 parents f260b5a + 74554ca commit 85d7808
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 7 deletions.
35 changes: 34 additions & 1 deletion mscore/inspector/inspectorFret.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,16 @@ InspectorFretDiagram::InspectorFretDiagram(QWidget* parent)
{ Pid::PLACEMENT, 0, f.placement, f.resetPlacement },
{ Pid::FRET_STRINGS, 0, f.strings, f.resetStrings },
{ Pid::FRET_FRETS, 0, f.frets, f.resetFrets },
{ Pid::FRET_OFFSET, 0, f.offset, f.resetOffset },
{ Pid::FRET_BARRE, 0, f.barre, f.resetBarre },
};
const std::vector<InspectorPanel> ppList = {
{ f.title, f.panel }
};
mapSignals(iiList, ppList);
int fretNumber = toFretDiagram(inspector->element())->fretOffset() + 1;
f.fretNumber->setValue(fretNumber);
connect(f.fretNumber, SIGNAL(valueChanged(int)), SLOT(fretNumberChanged(int)));
connect(f.resetFretNumber, SIGNAL(resetClicked()), SLOT(resetFretNumber()));
}

//---------------------------------------------------------
Expand All @@ -67,5 +70,35 @@ void InspectorFretDiagram::setElement()
f.diagram->setFretDiagram(fd);
}

//---------------------------------------------------------
// fretNumberChanged
//---------------------------------------------------------

void InspectorFretDiagram::fretNumberChanged(int fretNumber)
{
FretDiagram* fd = toFretDiagram(inspector->element());
fd->score()->startCmd();
fd->undoChangeProperty(Pid::FRET_OFFSET, fretNumber - 1);
fd->score()->endCmd();
f.resetFretNumber->setEnabled(fretNumber != 1);
f.diagram->setFretDiagram(fd);
}

//---------------------------------------------------------
// resetFretNumberClicked
//---------------------------------------------------------

void InspectorFretDiagram::resetFretNumber()
{
FretDiagram* fd = toFretDiagram(inspector->element());
int fretNumber = 1;
fd->score()->startCmd();
fd->undoChangeProperty(Pid::FRET_OFFSET, fretNumber - 1);
fd->score()->endCmd();
f.fretNumber->setValue(fretNumber);
f.resetFretNumber->setEnabled(false);
f.diagram->setFretDiagram(fd);
}

}

2 changes: 2 additions & 0 deletions mscore/inspector/inspectorFret.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ class InspectorFretDiagram : public InspectorElementBase {

private slots:
virtual void valueChanged(int idx) override;
void fretNumberChanged(int fretNumber);
void resetFretNumber();

public:
InspectorFretDiagram(QWidget* parent);
Expand Down
15 changes: 9 additions & 6 deletions mscore/inspector/inspector_fret.ui
Original file line number Diff line number Diff line change
Expand Up @@ -207,17 +207,20 @@
<item row="6" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Offset:</string>
<string>Fret number:</string>
</property>
<property name="buddy">
<cstring>offset</cstring>
<cstring>fretNumber</cstring>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QSpinBox" name="offset">
<widget class="QSpinBox" name="fretNumber">
<property name="accessibleName">
<string>Offset</string>
<string>Fret number</string>
</property>
<property name="minimum">
<number>1</number>
</property>
</widget>
</item>
Expand Down Expand Up @@ -256,7 +259,7 @@
<widget class="Ms::ResetButton" name="resetBarre" native="true"/>
</item>
<item row="6" column="2">
<widget class="Ms::ResetButton" name="resetOffset" native="true"/>
<widget class="Ms::ResetButton" name="resetFretNumber" native="true"/>
</item>
</layout>
</widget>
Expand Down Expand Up @@ -284,7 +287,7 @@
<tabstop>strings</tabstop>
<tabstop>frets</tabstop>
<tabstop>barre</tabstop>
<tabstop>offset</tabstop>
<tabstop>fretNumber</tabstop>
</tabstops>
<resources/>
<connections/>
Expand Down

0 comments on commit 85d7808

Please sign in to comment.