Skip to content

Commit

Permalink
Merge pull request #1156 from andreituicu/accessible-menus
Browse files Browse the repository at this point in the history
Accessible Menus
  • Loading branch information
lasconic committed Aug 18, 2014
2 parents 7953d7e + 7365cbd commit c42a12d
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 0 deletions.
9 changes: 9 additions & 0 deletions mscore/musescore.cpp
Expand Up @@ -812,6 +812,7 @@ MuseScore::MuseScore()
// Menu Edit
//---------------------


menuEdit = mb->addMenu(tr("&Edit"));
menuEdit->setObjectName("Edit");
menuEdit->addAction(getAction("undo"));
Expand All @@ -837,6 +838,7 @@ MuseScore::MuseScore()
menuMeasure->addAction(getAction("join-measure"));
menuEdit->addMenu(menuMeasure);


menuEdit->addSeparator();
QMenu* menuVoices = new QMenu(tr("&Voices"));
menuVoices->addAction(getAction("voice-x12"));
Expand Down Expand Up @@ -1084,6 +1086,7 @@ MuseScore::MuseScore()
menuHelp->addSeparator();

QAction *aboutAction = new QAction(tr("&About"), 0);

aboutAction->setMenuRole(QAction::AboutRole);
connect(aboutAction, SIGNAL(triggered()), this, SLOT(about()));
menuHelp->addAction(aboutAction);
Expand All @@ -1110,6 +1113,12 @@ MuseScore::MuseScore()
menuHelp->addSeparator();
menuHelp->addAction(getAction("resource-manager"));

//accessibility for menus
foreach (QMenu* menu, mb->findChildren<QMenu*>()) {
menu->setAccessibleName(menu->objectName());
menu->setAccessibleDescription(Shortcut::getMenuShortcutString(menu));
}

setCentralWidget(envelope);

// load cascading instrument templates
Expand Down
12 changes: 12 additions & 0 deletions mscore/shortcut.cpp
Expand Up @@ -243,8 +243,10 @@ QAction* Shortcut::action() const
s += ")";
_action->setToolTip(s);
}

if (_icon != Icons::Invalid_ICON)
_action->setIcon(*icons[int(_icon)]);

return _action;
}

Expand Down Expand Up @@ -275,6 +277,16 @@ QString Shortcut::keysToString() const
return s;
}

//---------------------------------------------------------
// getMenuShortcutString
//---------------------------------------------------------

QString Shortcut::getMenuShortcutString(const QMenu *menu)
{
int shortcutKeyPosition = menu->title().indexOf('&') + 1;
return QString("Alt+") + menu->title().at(shortcutKeyPosition);
}

//---------------------------------------------------------
// compareKeys
// return true if keys are equal
Expand Down
2 changes: 2 additions & 0 deletions mscore/shortcut.h
Expand Up @@ -173,6 +173,8 @@ class Shortcut {

bool compareKeys(const Shortcut&) const;
QString keysToString() const;
static QString getMenuShortcutString(const QMenu* menu);

void write(Ms::Xml&) const;
void read(Ms::XmlReader&);

Expand Down

0 comments on commit c42a12d

Please sign in to comment.