X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fsettingspagedlg.cpp;h=0d6b85203de871b2e55cc7a1571dd405e50e2d7e;hp=df37ba0153ad774ff11d46c0180490df5140993b;hb=f824db0e31b54969e0b7fa0b5405b1e9173d482c;hpb=3f43fe0ece466c4156ba3706060b6b9eb5fe3a3c diff --git a/src/qtui/settingspagedlg.cpp b/src/qtui/settingspagedlg.cpp index df37ba01..0d6b8520 100644 --- a/src/qtui/settingspagedlg.cpp +++ b/src/qtui/settingspagedlg.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-08 by the Quassel IRC Team * + * Copyright (C) 2005-09 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -20,11 +20,21 @@ #include "settingspagedlg.h" -SettingsPageDlg::SettingsPageDlg(SettingsPage *page, QWidget *parent) : QDialog(parent) { +#include "iconloader.h" + +SettingsPageDlg::SettingsPageDlg(SettingsPage *page, QWidget *parent) + : QDialog(parent) +{ ui.setupUi(this); _currentPage = page; page->setParent(this); + + // make it look more native under Mac OS X: + setWindowFlags(Qt::Sheet); + ui.pageTitle->setText(page->title()); + setWindowTitle(tr("Configure %1").arg(page->title())); + setWindowIcon(SmallIcon("configure")); // make the scrollarea behave sanely ui.settingsFrame->setWidgetResizable(true); @@ -52,7 +62,9 @@ void SettingsPageDlg::setButtonStates() { void SettingsPageDlg::buttonClicked(QAbstractButton *button) { switch(ui.buttonBox->standardButton(button)) { case QDialogButtonBox::Ok: - if(applyChanges()) accept(); + if(currentPage() && currentPage()->hasChanged()) { + if(applyChanges()) accept(); + } else accept(); break; case QDialogButtonBox::Apply: applyChanges();