init roleNames only one time

Change-Id: I61e120c2e5c4a036c001b410331e09993d7594d6
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
Tim Jenssen
2016-06-17 17:33:02 +02:00
parent 29e51517f4
commit c13f2f0784
5 changed files with 66 additions and 58 deletions

View File

@@ -94,14 +94,15 @@ QVariant SessionModel::data(const QModelIndex &index, int role) const
QHash<int, QByteArray> SessionModel::roleNames() const
{
QHash<int, QByteArray> roleNames;
roleNames[Qt::DisplayRole] = "sessionName";
roleNames[DefaultSessionRole] = "defaultSession";
roleNames[ActiveSessionRole] = "activeSession";
roleNames[LastSessionRole] = "lastSession";
roleNames[ProjectsPathRole] = "projectsPath";
roleNames[ProjectsDisplayRole] = "projectsName";
return roleNames;
static QHash<int, QByteArray> extraRoles{
{Qt::DisplayRole, "sessionName"},
{DefaultSessionRole, "defaultSession"},
{ActiveSessionRole, "activeSession"},
{LastSessionRole, "lastSession"},
{ProjectsPathRole, "projectsPath"},
{ProjectsDisplayRole, "projectsName"}
};
return QAbstractListModel::roleNames() + extraRoles;
}
bool SessionModel::isDefaultVirgin() const
@@ -180,6 +181,8 @@ QVariant ProjectModel::data(const QModelIndex &index, int role) const
switch (role) {
case Qt::DisplayRole:
return data.second;
case Qt::ToolTipRole:
return data.first;
case FilePathRole:
return data.first;
case PrettyFilePathRole:
@@ -191,11 +194,11 @@ QVariant ProjectModel::data(const QModelIndex &index, int role) const
QHash<int, QByteArray> ProjectModel::roleNames() const
{
QHash<int, QByteArray> roleNames;
roleNames[Qt::DisplayRole] = "displayName";
roleNames[FilePathRole] = "filePath";
roleNames[PrettyFilePathRole] = "prettyFilePath";
return roleNames;
static QHash<int, QByteArray> extraRoles{
{FilePathRole, "filePath"},
{PrettyFilePathRole, "prettyFilePath"}
};
return QAbstractListModel::roleNames().unite(extraRoles);
}
void ProjectModel::resetProjects()

View File

@@ -56,11 +56,12 @@ int GradientModel::rowCount(const QModelIndex & /*parent*/) const
QHash<int, QByteArray> GradientModel::roleNames() const
{
QHash<int, QByteArray> roleNames;
roleNames[Qt::UserRole + 1] = "position";
roleNames[Qt::UserRole + 2] = "color";
roleNames[Qt::UserRole + 3] = "readOnly";
roleNames[Qt::UserRole + 4] = "index";
static QHash<int, QByteArray> roleNames{
{Qt::UserRole + 1, "position"},
{Qt::UserRole + 2, "color"},
{Qt::UserRole + 3, "readOnly"},
{Qt::UserRole + 4, "index"}
};
return roleNames;
}

View File

@@ -124,10 +124,11 @@ QVariant StatesEditorModel::data(const QModelIndex &index, int role) const
QHash<int, QByteArray> StatesEditorModel::roleNames() const
{
QHash<int, QByteArray> roleNames;
roleNames.insert(StateNameRole, "stateName");
roleNames.insert(StateImageSourceRole, "stateImageSource");
roleNames.insert(InternalNodeId, "internalNodeId");
static QHash<int, QByteArray> roleNames{
{StateNameRole, "stateName"},
{StateImageSourceRole, "stateImageSource"},
{InternalNodeId, "internalNodeId"}
};
return roleNames;
}

View File

@@ -250,20 +250,21 @@ QVariant FlameGraphModel::data(const QModelIndex &index, int role) const
QHash<int, QByteArray> FlameGraphModel::roleNames() const
{
QHash<int, QByteArray> names = QAbstractItemModel::roleNames();
names[TypeIdRole] = "typeId";
names[TypeRole] = "type";
names[DurationRole] = "duration";
names[CallCountRole] = "callCount";
names[DetailsRole] = "details";
names[FilenameRole] = "filename";
names[LineRole] = "line";
names[ColumnRole] = "column";
names[NoteRole] = "note";
names[TimePerCallRole] = "timePerCall";
names[TimeInPercentRole] = "timeInPercent";
names[RangeTypeRole] = "rangeType";
return names;
static QHash<int, QByteArray> extraRoles{
{TypeIdRole, "typeId"},
{TypeRole, "type"},
{DurationRole, "duration"},
{CallCountRole, "callCount"},
{DetailsRole, "details"},
{FilenameRole, "filename"},
{LineRole, "line"},
{ColumnRole, "column"},
{NoteRole, "note"},
{TimePerCallRole, "timePerCall"},
{TimeInPercentRole, "timeInPercent"},
{RangeTypeRole, "rangeType"}
};
return QAbstractItemModel::roleNames().unite(extraRoles);
}
QmlProfilerModelManager *FlameGraphModel::modelManager() const

View File

@@ -188,10 +188,11 @@ int ExampleSetModel::getExtraExampleSetIndex(int i) const
QHash<int, QByteArray> ExampleSetModel::roleNames() const
{
QHash<int, QByteArray> roleNames;
roleNames[Qt::UserRole + 1] = "text";
roleNames[Qt::UserRole + 2] = "QtId";
roleNames[Qt::UserRole + 3] = "extraSetIndex";
static QHash<int, QByteArray> roleNames{
{Qt::UserRole + 1, "text"},
{Qt::UserRole + 2, "QtId"},
{Qt::UserRole + 3, "extraSetIndex"}
};
return roleNames;
}
@@ -680,24 +681,25 @@ QVariant ExamplesListModel::data(const QModelIndex &index, int role) const
QHash<int, QByteArray> ExamplesListModel::roleNames() const
{
QHash<int, QByteArray> roleNames;
roleNames[Name] = "name";
roleNames[ProjectPath] = "projectPath";
roleNames[ImageUrl] = "imageUrl";
roleNames[Description] = "description";
roleNames[DocUrl] = "docUrl";
roleNames[FilesToOpen] = "filesToOpen";
roleNames[MainFile] = "mainFile";
roleNames[Tags] = "tags";
roleNames[Difficulty] = "difficulty";
roleNames[Type] = "type";
roleNames[HasSourceCode] = "hasSourceCode";
roleNames[Dependencies] = "dependencies";
roleNames[IsVideo] = "isVideo";
roleNames[VideoUrl] = "videoUrl";
roleNames[VideoLength] = "videoLength";
roleNames[Platforms] = "platforms";
roleNames[IsHighlighted] = "isHighlighted";
static QHash<int, QByteArray> roleNames{
{Name, "name"},
{ProjectPath, "projectPath"},
{ImageUrl, "imageUrl"},
{Description, "description"},
{DocUrl, "docUrl"},
{FilesToOpen, "filesToOpen"},
{MainFile, "mainFile"},
{Tags, "tags"},
{Difficulty, "difficulty"},
{Type, "type"},
{HasSourceCode, "hasSourceCode"},
{Dependencies, "dependencies"},
{IsVideo, "isVideo"},
{VideoUrl, "videoUrl"},
{VideoLength, "videoLength"},
{Platforms, "platforms"},
{IsHighlighted, "isHighlighted"}
};
return roleNames;
}