From 2233dffb8505bb57d30b8d9f87720e42aca1392c Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Wed, 11 Dec 2013 15:00:15 +0100 Subject: [PATCH] cascsa --- src/core/feedsmodel.cpp | 3 +++ src/core/feedsmodel.h | 6 ++++++ src/gui/formsettings.cpp | 16 +++++++++++++++- src/gui/formsettings.h | 1 + 4 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/core/feedsmodel.cpp b/src/core/feedsmodel.cpp index fed4d561a..9a150c19d 100644 --- a/src/core/feedsmodel.cpp +++ b/src/core/feedsmodel.cpp @@ -1,9 +1,12 @@ #include "core/feedsmodel.h" +#include "core/feedsmodelrootitem.h" FeedsModel::FeedsModel(QObject *parent) : QAbstractItemModel(parent) { + m_rootItem = new FeedsModelRootItem(); } FeedsModel::~FeedsModel() { qDebug("Destroying FeedsModel instance."); + delete m_rootItem; } diff --git a/src/core/feedsmodel.h b/src/core/feedsmodel.h index 23ebf4d08..2e6b0243f 100644 --- a/src/core/feedsmodel.h +++ b/src/core/feedsmodel.h @@ -4,6 +4,8 @@ #include +class FeedsModelRootItem; + class FeedsModel : public QAbstractItemModel { Q_OBJECT @@ -15,6 +17,10 @@ class FeedsModel : public QAbstractItemModel { public slots: + + private: + FeedsModelRootItem *m_rootItem; + }; #endif // FEEDSMODEL_H diff --git a/src/gui/formsettings.cpp b/src/gui/formsettings.cpp index 41e325317..64efb0a21 100755 --- a/src/gui/formsettings.cpp +++ b/src/gui/formsettings.cpp @@ -2,6 +2,7 @@ #include #include #include +#include #include "gui/formsettings.h" #include "gui/iconthemefactory.h" @@ -83,6 +84,8 @@ FormSettings::FormSettings(QWidget *parent) : QDialog(parent), m_ui(new Ui::Form this, SLOT(onSkinSelected(QTreeWidgetItem*,QTreeWidgetItem*))); connect(m_ui->m_cmbExternalBrowserPreset, SIGNAL(currentIndexChanged(int)), this, SLOT(changeDefaultBrowserArguments(int))); + connect(m_ui->m_btnExternalBrowserExecutable, SIGNAL(clicked()), + this, SLOT(selectBrowserExecutable())); // Load all settings. loadGeneral(); @@ -123,10 +126,21 @@ void FormSettings::changeBrowserProgressColor() { m_initialSettings.m_webBrowserProgress = color_dialog.selectedColor(); } +void FormSettings::selectBrowserExecutable() { + QString executable_file = QFileDialog::getOpenFileName(this, + tr("Select web browser executable"), + QDir::homePath(), + tr("Executables (*.*)")); + + if (!executable_file.isEmpty()) { + m_ui->m_txtExternalBrowserExecutable->setText(executable_file); + } +} + void FormSettings::loadFeedsMessages() { Settings *settings = Settings::getInstance(); - m_ui->m_cmbExternalBrowserPreset->addItem(tr("Opera 12 or older)", "-nosession %1")); + m_ui->m_cmbExternalBrowserPreset->addItem(tr("Opera 12 or older"), "-nosession %1"); m_ui->m_txtExternalBrowserExecutable->setText(settings->value(APP_CFG_MESSAGES, "external_browser_executable").toString()); m_ui->m_txtExternalBrowserArguments->setText(settings->value(APP_CFG_MESSAGES, diff --git a/src/gui/formsettings.h b/src/gui/formsettings.h index c13a95b11..ba2bb458b 100644 --- a/src/gui/formsettings.h +++ b/src/gui/formsettings.h @@ -64,6 +64,7 @@ class FormSettings : public QDialog { void loadFeedsMessages(); void saveFeedsMessages(); void changeDefaultBrowserArguments(int index); + void selectBrowserExecutable(); void onProxyTypeChanged(int index);