KDEUI
kconfigdialog.h
Go to the documentation of this file.
00001 /* 00002 * This file is part of the KDE libraries 00003 * Copyright (C) 2003 Benjamin C Meyer (ben+kdelibs at meyerhome dot net) 00004 * Copyright (C) 2003 Waldo Bastian <bastian@kde.org> 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Library General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Library General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Library General Public License 00017 * along with this library; see the file COPYING.LIB. If not, write to 00018 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00019 * Boston, MA 02110-1301, USA. 00020 */ 00021 #ifndef KCONFIGDIALOG_H 00022 #define KCONFIGDIALOG_H 00023 00024 #include <kpagedialog.h> 00025 00026 class KConfig; 00027 class KCoreConfigSkeleton; 00028 class KConfigSkeleton; 00029 class KConfigDialogManager; 00030 00073 class KDEUI_EXPORT KConfigDialog : public KPageDialog { 00074 Q_OBJECT 00075 00076 Q_SIGNALS: 00080 void widgetModified(); 00081 00087 void settingsChanged(const QString& dialogName); 00088 00089 public: 00102 KConfigDialog( QWidget *parent, const QString& name, 00103 KConfigSkeleton *config ); 00104 00119 KConfigDialog( QWidget *parent, const QString& name, 00120 KCoreConfigSkeleton *config ); 00121 00127 ~KConfigDialog(); 00128 00145 KPageWidgetItem* addPage( QWidget *page, const QString &itemName, 00146 const QString &pixmapName=QString(), 00147 const QString &header=QString(), 00148 bool manage=true ); 00149 00168 KPageWidgetItem* addPage( QWidget *page, KConfigSkeleton *config, 00169 const QString &itemName, 00170 const QString &pixmapName=QString(), 00171 const QString &header=QString() ); 00172 00179 static KConfigDialog* exists( const QString& name ); 00180 00187 static bool showDialog( const QString& name ); 00188 00189 00190 protected Q_SLOTS: 00197 virtual void updateSettings(); 00198 00206 virtual void updateWidgets(); 00207 00214 virtual void updateWidgetsDefault(); 00215 00216 00223 void updateButtons(); 00224 00230 void settingsChangedSlot(); 00231 00232 protected: 00233 00239 virtual bool hasChanged(); 00240 00245 virtual bool isDefault(); 00246 00250 virtual void showEvent(QShowEvent *e); 00251 00252 private Q_SLOTS: 00256 void onPageRemoved(KPageWidgetItem* item); 00257 00258 private: 00259 class KConfigDialogPrivate; 00260 friend class KConfigDialogPrivate; 00261 00262 KConfigDialogPrivate *const d; 00263 00264 Q_PRIVATE_SLOT( d, void _k_updateButtons() ) 00265 Q_PRIVATE_SLOT( d, void _k_settingsChangedSlot() ) 00266 00267 Q_DISABLE_COPY(KConfigDialog) 00268 }; 00269 00270 #endif //KCONFIGDIALOG_H 00271
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Wed May 2 2012 17:56:56 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2012 The KDE developers.
Generated on Wed May 2 2012 17:56:56 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.