// Application headers.
#include "browserwindow.h"
-#include "mainview.h"
#include "settings.h"
-#include "ui_settings.h"
+#include "ui_settingsprivacy.h"
+#include "ui_settingsgeneral.h"
// KDE Frameworks headers.
#include <KActionCollection>
BrowserWindow::BrowserWindow() : KXmlGuiWindow()
{
// Instantiate the main view pointer.
- MainView *mainViewPointer = new MainView(this);
+ mainViewPointer = new MainView(this);
// Set the main view as the central widget.
setCentralWidget(mainViewPointer);
// Check to make sure the dialog box isn't already displayed.
if (!KConfigDialog::exists(QStringLiteral("settings")))
{
- // Create a general settings page.
+ // Create the settings widgets.
+ QWidget *privacySettingsWidgetPointer = new QWidget;
QWidget *generalSettingsWidgetPointer = new QWidget;
// Instantiate the settings UI.
- Ui::Settings settingsUi;
+ Ui::PrivacySettings privacySettingsUi;
+ Ui::GeneralSettings generalSettingsUi;
- // Setup the UI to display the general settings widget.
- settingsUi.setupUi(generalSettingsWidgetPointer);
+ // Setup the UI to display the settings widgets.
+ privacySettingsUi.setupUi(privacySettingsWidgetPointer);
+ generalSettingsUi.setupUi(generalSettingsWidgetPointer);
// Instantiate a settings config dialog from the settings.kcfg file.
KConfigDialog *configDialogPointer = new KConfigDialog(this, QStringLiteral("settings"), Settings::self());
- // Add the general settings widget page.
+ // Add the settings widgets as config dialog pages.
+ configDialogPointer->addPage(privacySettingsWidgetPointer, i18nc("@title:tab", "Privacy"), QStringLiteral("privacy-browser"));
configDialogPointer->addPage(generalSettingsWidgetPointer, i18nc("@title:tab", "General"), QStringLiteral("breeze-settings"));
// Delete the config dialog when it is closed.
// Make it so.
configDialogPointer->show();
+
+ // Apply the settings when they are updated.
+ connect(configDialogPointer, SIGNAL(settingsChanged(QString)), mainViewPointer, SLOT(applyApplicationSettings()));
+ connect(configDialogPointer, SIGNAL(settingsChanged(QString)), mainViewPointer, SLOT(applyDomainSettings()));
}
}