Prefer prefer QVector over QList

This commit is contained in:
lupoDharkael
2018-01-23 18:14:17 +01:00
parent 48106975fb
commit d721dcd560
9 changed files with 43 additions and 43 deletions

View File

@@ -134,14 +134,14 @@ void AppLauncherWidget::searchChanged(const QString &text) {
m_filterList->show();
m_filterList->clear();
QRegExp regexp(text, Qt::CaseInsensitive, QRegExp::Wildcard);
QList<DesktopAppData> apps;
QVector<DesktopAppData> apps;
for (auto const& i : catIconNames.toStdMap()) {
const QString &cat = i.first;
if (!m_appsMap.contains(cat)) {
continue;
}
const QList<DesktopAppData> &appList = m_appsMap[cat];
const QVector<DesktopAppData> &appList = m_appsMap[cat];
for (const DesktopAppData &app: appList) {
if (!apps.contains(app) && (app.name.contains(regexp) ||
app.description.contains(regexp) ))
@@ -170,7 +170,7 @@ void AppLauncherWidget::initListWidget() {
QListWidget *itemsWidget = new QListWidget();
configureListView(itemsWidget);
const QList<DesktopAppData> &appList = m_appsMap[cat];
const QVector<DesktopAppData> &appList = m_appsMap[cat];
addAppsToListWidget(itemsWidget, appList);
m_tabWidget->addTab(itemsWidget, QIcon::fromTheme(iconName), "");
@@ -197,7 +197,7 @@ void AppLauncherWidget::initAppMap() {
m_appsMap = m_parser.getAppsByCategory(categories);
// Unify multimedia.
QList<DesktopAppData> multimediaList;
QVector<DesktopAppData> multimediaList;
QStringList multimediaNames;
multimediaNames << "AudioVideo" << "Audio" << "Video";
for (const QString &name : multimediaNames) {
@@ -227,7 +227,7 @@ void AppLauncherWidget::configureListView(QListWidget *widget) {
}
void AppLauncherWidget::addAppsToListWidget(
QListWidget *widget, const QList<DesktopAppData> &appList)
QListWidget *widget, const QVector<DesktopAppData> &appList)
{
for (const DesktopAppData &app: appList) {
QListWidgetItem *buttonItem = new QListWidgetItem(widget);

View File

@@ -43,13 +43,13 @@ private:
void initAppMap();
void configureListView(QListWidget *widget);
void addAppsToListWidget(QListWidget *widget,
const QList<DesktopAppData> &appList);
const QVector<DesktopAppData> &appList);
DesktopFileParser m_parser;
QPixmap m_pixmap;
QString m_tempFile;
bool m_keepOpen;
QMap<QString, QList<DesktopAppData>> m_appsMap;
QMap<QString, QVector<DesktopAppData>> m_appsMap;
QCheckBox *m_keepOpenCheckbox;
QCheckBox *m_terminalCheckbox;
QVBoxLayout *m_layout;

View File

@@ -35,7 +35,7 @@ protected:
void initButtonList();
private:
QList<CaptureButton::ButtonType> m_listButtons;
QVector<CaptureButton::ButtonType> m_listButtons;
QMap<QString, CaptureButton::ButtonType> m_buttonTypeByName;
void updateActiveButtons(QListWidgetItem *);

View File

@@ -36,7 +36,7 @@
int main(int argc, char *argv[]) {
// required for the button serialization
qRegisterMetaTypeStreamOperators<QList<int> >("QList<int>");
qRegisterMetaTypeStreamOperators<QVector<int> >("QVector<int>");
qApp->setApplicationVersion(static_cast<QString>(APP_VERSION));
QTranslator translator;

View File

@@ -25,23 +25,23 @@ ConfigHandler::ConfigHandler(){
m_settings.setDefaultFormat(QSettings::IniFormat);
}
QList<CaptureButton::ButtonType> ConfigHandler::getButtons() {
QList<CaptureButton::ButtonType> buttons;
QVector<CaptureButton::ButtonType> ConfigHandler::getButtons() {
QVector<CaptureButton::ButtonType> buttons;
if (m_settings.contains("buttons")) {
QList<int> buttonsInt = m_settings.value("buttons").value<QList<int> >();
QVector<int> buttonsInt = m_settings.value("buttons").value<QVector<int> >();
bool modified = normalizeButtons(buttonsInt);
if (modified) {
m_settings.setValue("buttons", QVariant::fromValue(buttonsInt));
}
buttons = fromIntToButton(buttonsInt);
} else {
buttons = CaptureButton::getIterableButtonTypes().toList();
buttons = CaptureButton::getIterableButtonTypes();
}
return buttons;
}
void ConfigHandler::setButtons(const QList<CaptureButton::ButtonType> &buttons) {
QList<int> l = fromButtonToInt(buttons);
void ConfigHandler::setButtons(const QVector<CaptureButton::ButtonType> &buttons) {
QVector<int> l = fromButtonToInt(buttons);
normalizeButtons(l);
m_settings.setValue("buttons", QVariant::fromValue(l));
}
@@ -210,7 +210,7 @@ void ConfigHandler::setDefaults() {
}
void ConfigHandler::setAllTheButtons() {
QList<int> buttons;
QVector<int> buttons;
auto listTypes = CaptureButton::getIterableButtonTypes();
for (const CaptureButton::ButtonType t: listTypes) {
buttons << static_cast<int>(t);
@@ -222,16 +222,16 @@ QString ConfigHandler::configFilePath() const {
return m_settings.fileName();
}
bool ConfigHandler::normalizeButtons(QList<int> &buttons) {
bool ConfigHandler::normalizeButtons(QVector<int> &buttons) {
auto listTypes = CaptureButton::getIterableButtonTypes();
QList<int> listTypesInt;
for(auto i: listTypes) listTypesInt << static_cast<int>(i);
QVector<int> listTypesInt;
for(auto i: listTypes)
listTypesInt << static_cast<int>(i);
bool hasChanged = false;
QMutableListIterator<int> i(buttons);
while (i.hasNext()) {
if (!listTypesInt.contains(i.next())) {
i.remove();
for (int i = 0; i < buttons.size(); i++) {
if (!listTypesInt.contains(buttons.at(i))) {
buttons.remove(i);
hasChanged = true;
}
}
@@ -242,19 +242,19 @@ bool ConfigHandler::normalizeButtons(QList<int> &buttons) {
return hasChanged;
}
QList<CaptureButton::ButtonType> ConfigHandler::fromIntToButton(
const QList<int> &l)
QVector<CaptureButton::ButtonType> ConfigHandler::fromIntToButton(
const QVector<int> &l)
{
QList<CaptureButton::ButtonType> buttons;
QVector<CaptureButton::ButtonType> buttons;
for (auto const i: l)
buttons << static_cast<CaptureButton::ButtonType>(i);
return buttons;
}
QList<int> ConfigHandler::fromButtonToInt(
const QList<CaptureButton::ButtonType> &l)
QVector<int> ConfigHandler::fromButtonToInt(
const QVector<CaptureButton::ButtonType> &l)
{
QList<int> buttons;
QVector<int> buttons;
for (auto const i: l)
buttons << static_cast<int>(i);
return buttons;

View File

@@ -18,7 +18,7 @@
#pragma once
#include "src/capture/widget/capturebutton.h"
#include <QList>
#include <QVector>
#include <QSettings>
class ConfigHandler
@@ -26,8 +26,8 @@ class ConfigHandler
public:
explicit ConfigHandler();
QList<CaptureButton::ButtonType> getButtons();
void setButtons(const QList<CaptureButton::ButtonType> &);
QVector<CaptureButton::ButtonType> getButtons();
void setButtons(const QVector<CaptureButton::ButtonType> &);
QString savePathValue();
void setSavePath(const QString &);
@@ -73,9 +73,9 @@ public:
private:
QSettings m_settings;
bool normalizeButtons(QList<int> &);
bool normalizeButtons(QVector<int> &);
QList<CaptureButton::ButtonType> fromIntToButton(const QList<int> &l);
QList<int> fromButtonToInt(const QList<CaptureButton::ButtonType> &l);
QVector<CaptureButton::ButtonType> fromIntToButton(const QVector<int> &l);
QVector<int> fromButtonToInt(const QVector<CaptureButton::ButtonType> &l);
};

View File

@@ -127,8 +127,8 @@ int DesktopFileParser::processDirectory(const QDir &dir) {
return m_appList.length() - length;
}
QList<DesktopAppData> DesktopFileParser::getAppsByCategory(const QString &category) {
QList<DesktopAppData> res;
QVector<DesktopAppData> DesktopFileParser::getAppsByCategory(const QString &category) {
QVector<DesktopAppData> res;
for (const DesktopAppData &app : m_appList) {
if (app.categories.contains(category)) {
res.append(app);
@@ -137,10 +137,10 @@ QList<DesktopAppData> DesktopFileParser::getAppsByCategory(const QString &catego
return res;
}
QMap<QString, QList<DesktopAppData>> DesktopFileParser::getAppsByCategory(
QMap<QString, QVector<DesktopAppData>> DesktopFileParser::getAppsByCategory(
const QStringList &categories)
{
QMap<QString, QList<DesktopAppData>> res;
QMap<QString, QVector<DesktopAppData>> res;
for (const DesktopAppData &app : m_appList) {
for (const QString &category: categories) {
if (app.categories.contains(category)) {

View File

@@ -57,8 +57,8 @@ struct DesktopFileParser {
DesktopAppData parseDesktopFile(const QString &fileName, bool &ok) const;
int processDirectory(const QDir &dir);
QList<DesktopAppData> getAppsByCategory(const QString &category);
QMap<QString, QList<DesktopAppData>> getAppsByCategory(
QVector<DesktopAppData> getAppsByCategory(const QString &category);
QMap<QString, QVector<DesktopAppData>> getAppsByCategory(
const QStringList &categories);
private:
@@ -68,5 +68,5 @@ private:
QString m_localeDescriptionShort;
QIcon m_defaultIcon;
QList<DesktopAppData> m_appList;
QVector<DesktopAppData> m_appList;
};

View File

@@ -34,7 +34,7 @@ void SystemNotification::sendMessage(
}
#ifndef Q_OS_WIN
QList<QVariant> args;
QList<QVariant> args;
args << (qAppName()) //appname
<< static_cast<unsigned int>(0) //id
<< "flameshot.png" //icon