aboutsummaryrefslogtreecommitdiff
path: root/libqmenumodel/src/qmenumodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libqmenumodel/src/qmenumodel.cpp')
-rw-r--r--libqmenumodel/src/qmenumodel.cpp23
1 files changed, 14 insertions, 9 deletions
diff --git a/libqmenumodel/src/qmenumodel.cpp b/libqmenumodel/src/qmenumodel.cpp
index f0c2274..c59522d 100644
--- a/libqmenumodel/src/qmenumodel.cpp
+++ b/libqmenumodel/src/qmenumodel.cpp
@@ -41,15 +41,6 @@ QMenuModel::QMenuModel(GMenuModel *other, QObject *parent)
m_menuModel(0),
m_signalChangedId(0)
{
- static QHash<int, QByteArray> rolesNames;
- if (rolesNames.empty()) {
- rolesNames[Action] = "action";
- rolesNames[Label] = "label";
- rolesNames[LinkSection] = "linkSection";
- rolesNames[LinkSubMenu] = "linkSubMenu";
- rolesNames[Extra] = "extra";
- }
- setRoleNames(rolesNames);
setMenuModel(other);
}
@@ -102,6 +93,20 @@ void QMenuModel::clearModel()
}
/*! \internal */
+QHash<int, QByteArray> QMenuModel::roleNames() const
+{
+ static QHash<int, QByteArray> roles;
+ if (roles.isEmpty()) {
+ roles[Action] = "action";
+ roles[Label] = "label";
+ roles[LinkSection] = "linkSection";
+ roles[LinkSubMenu] = "linkSubMenu";
+ roles[Extra] = "extra";
+ }
+ return roles;
+}
+
+/*! \internal */
QVariant QMenuModel::data(const QModelIndex &index, int role) const
{
QVariant attribute;