summaryrefslogtreecommitdiffabout
path: root/microkde/kdeui
authorulf69 <ulf69>2004-08-10 01:34:22 (UTC)
committer ulf69 <ulf69>2004-08-10 01:34:22 (UTC)
commitc9d570427f3d5bead7bee1301514a2d4b82836ea (patch) (unidiff)
tree8d25f388217c591b7dac1db6c26d0777e6459352 /microkde/kdeui
parent4f05a9fcbb9e54184aef93883886aaf865104463 (diff)
downloadkdepimpi-c9d570427f3d5bead7bee1301514a2d4b82836ea.zip
kdepimpi-c9d570427f3d5bead7bee1301514a2d4b82836ea.tar.gz
kdepimpi-c9d570427f3d5bead7bee1301514a2d4b82836ea.tar.bz2
enhancements to configure external apps like email and phones through a
generalized interface
Diffstat (limited to 'microkde/kdeui') (more/less context) (show whitespace changes)
-rw-r--r--microkde/kdeui/kcmodule.cpp10
-rw-r--r--microkde/kdeui/kcmodule.h11
2 files changed, 15 insertions, 6 deletions
diff --git a/microkde/kdeui/kcmodule.cpp b/microkde/kdeui/kcmodule.cpp
index 915cd0f..f646db3 100644
--- a/microkde/kdeui/kcmodule.cpp
+++ b/microkde/kdeui/kcmodule.cpp
@@ -12,56 +12,58 @@
12 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details. 14 Library General Public License for more details.
15 15
16 You should have received a copy of the GNU Library General Public License 16 You should have received a copy of the GNU Library General Public License
17 along with this library; see the file COPYING.LIB. If not, write to 17 along with this library; see the file COPYING.LIB. If not, write to
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. 19 Boston, MA 02111-1307, USA.
20 20
21*/ 21*/
22 22
23#include "kcmodule.h" 23#include "kcmodule.h"
24//US#include <kinstance.h> 24//US#include <kinstance.h>
25#include <kglobal.h> 25#include <kglobal.h>
26#include <klocale.h> 26#include <klocale.h>
27#include <kdebug.h> 27#include <kdebug.h>
28 28
29class KCModulePrivate 29class KCModulePrivate
30{ 30{
31public: 31public:
32//US KInstance *_instance; 32//US KInstance *_instance;
33 QString _rootOnlyMsg; 33 QString _rootOnlyMsg;
34 bool _useRootOnlyMsg; 34 bool _useRootOnlyMsg;
35 bool _hasOwnInstance; 35 bool _hasOwnInstance;
36 KPrefs* _prefs;
36}; 37};
37 38
38KCModule::KCModule(QWidget *parent, const char *name, const QStringList &) 39KCModule::KCModule(KPrefs* prefs, QWidget *parent, const char *name, const QStringList &)
39 : QWidget(parent, name), _btn(Help|Default|Apply) 40 : QWidget(parent, name), _btn(Help|Default|Apply)
40{ 41{
41 kdDebug() << "KCModule " << name << endl; 42 kdDebug() << "KCModule " << name << endl;
42 d = new KCModulePrivate; 43 d = new KCModulePrivate;
43 d->_useRootOnlyMsg = true; 44 d->_useRootOnlyMsg = true;
45 d->_prefs = prefs;
44/*US 46/*US
45 d->_instance = new KInstance(name); 47 d->_instance = new KInstance(name);
46 if (name && strlen(name)) { 48 if (name && strlen(name)) {
47 d->_instance = new KInstance(name); 49 d->_instance = new KInstance(name);
48 KGlobal::locale()->insertCatalogue(name); 50 KGlobal::locale()->insertCatalogue(name);
49 } else 51 } else
50 d->_instance = new KInstance("kcmunnamed"); 52 d->_instance = new KInstance("kcmunnamed");
51*/ 53*/
52 d->_hasOwnInstance = true; 54 d->_hasOwnInstance = true;
53//US KGlobal::setActiveInstance(this->instance()); 55//US KGlobal::setActiveInstance(this->instance());
54} 56}
55 57
56/*US 58/*US
57KCModule::KCModule(KInstance *instance, QWidget *parent, const QStringList & ) 59KCModule::KCModule(KInstance *instance, QWidget *parent, const QStringList & )
58 : QWidget(parent, instance ? instance->instanceName().data() : 0), _btn(Help|Default|Apply) 60 : QWidget(parent, instance ? instance->instanceName().data() : 0), _btn(Help|Default|Apply)
59{ 61{
60 kdDebug() << "KCModule instance " << (instance ? instance->instanceName().data() : "none") << endl; 62 kdDebug() << "KCModule instance " << (instance ? instance->instanceName().data() : "none") << endl;
61 d = new KCModulePrivate; 63 d = new KCModulePrivate;
62 d->_useRootOnlyMsg = true; 64 d->_useRootOnlyMsg = true;
63 d->_instance = instance; 65 d->_instance = instance;
64 KGlobal::locale()->insertCatalogue(instance->instanceName()); 66 KGlobal::locale()->insertCatalogue(instance->instanceName());
65 d->_hasOwnInstance = false; 67 d->_hasOwnInstance = false;
66 KGlobal::setActiveInstance(this->instance()); 68 KGlobal::setActiveInstance(this->instance());
67} 69}
@@ -73,34 +75,40 @@ KCModule::~KCModule()
73 delete d->_instance; 75 delete d->_instance;
74*/ 76*/
75 delete d; 77 delete d;
76} 78}
77 79
78void KCModule::setRootOnlyMsg(const QString& msg) 80void KCModule::setRootOnlyMsg(const QString& msg)
79{ 81{
80 d->_rootOnlyMsg = msg; 82 d->_rootOnlyMsg = msg;
81} 83}
82 84
83QString KCModule::rootOnlyMsg() const 85QString KCModule::rootOnlyMsg() const
84{ 86{
85 return d->_rootOnlyMsg; 87 return d->_rootOnlyMsg;
86} 88}
87 89
88void KCModule::setUseRootOnlyMsg(bool on) 90void KCModule::setUseRootOnlyMsg(bool on)
89{ 91{
90 d->_useRootOnlyMsg = on; 92 d->_useRootOnlyMsg = on;
91} 93}
92 94
93bool KCModule::useRootOnlyMsg() const 95bool KCModule::useRootOnlyMsg() const
94{ 96{
95 return d->_useRootOnlyMsg; 97 return d->_useRootOnlyMsg;
96} 98}
99
100KPrefs* KCModule::getPreferences()
101{
102 return d->_prefs;
103}
104
97/*US 105/*US
98KInstance *KCModule::instance() const 106KInstance *KCModule::instance() const
99{ 107{
100 return d->_instance; 108 return d->_instance;
101} 109}
102*/ 110*/
103void KCModule::virtual_hook( int, void* ) 111void KCModule::virtual_hook( int, void* )
104{ /*BASE::virtual_hook( id, data );*/ } 112{ /*BASE::virtual_hook( id, data );*/ }
105 113
106//US #include "kcmodule.moc" 114//US #include "kcmodule.moc"
diff --git a/microkde/kdeui/kcmodule.h b/microkde/kdeui/kcmodule.h
index bc020bc..874958c 100644
--- a/microkde/kdeui/kcmodule.h
+++ b/microkde/kdeui/kcmodule.h
@@ -62,103 +62,103 @@ class KPrefs;
62 62
63class KCModule : public QWidget 63class KCModule : public QWidget
64{ 64{
65 Q_OBJECT 65 Q_OBJECT
66 66
67public: 67public:
68 68
69 /** 69 /**
70 * An enumeration type for the buttons used by this module. 70 * An enumeration type for the buttons used by this module.
71 * You should only use Help, Default and Apply. The rest is obsolete. 71 * You should only use Help, Default and Apply. The rest is obsolete.
72 * 72 *
73 * @see KCModule::buttons @see KCModule::setButtons 73 * @see KCModule::buttons @see KCModule::setButtons
74 */ 74 */
75 enum Button {Help=1, Default=2, Apply=16, 75 enum Button {Help=1, Default=2, Apply=16,
76 Reset=4, /* obsolete, do not use! */ 76 Reset=4, /* obsolete, do not use! */
77 Cancel=8, /* obsolete, do not use! */ 77 Cancel=8, /* obsolete, do not use! */
78 Ok=32, /* obsolete, do not use! */ 78 Ok=32, /* obsolete, do not use! */
79 SysDefault=64 /* obsolete, do not use! */ }; 79 SysDefault=64 /* obsolete, do not use! */ };
80 80
81 /* 81 /*
82 * Base class for all KControlModules. 82 * Base class for all KControlModules.
83 * Make sure you have a QStringList argument in your 83 * Make sure you have a QStringList argument in your
84 * implementation. 84 * implementation.
85 */ 85 */
86 KCModule(QWidget *parent=0, const char *name=0, const QStringList &args=QStringList() ); 86 KCModule(KPrefs* prefs, QWidget *parent=0, const char *name=0, const QStringList &args=QStringList() );
87 87
88//US KCModule(KInstance *instance, QWidget *parent=0, const QStringList &args=QStringList() ); 88//US KCModule(KInstance *instance, QWidget *parent=0, const QStringList &args=QStringList() );
89 89
90 /* 90 /*
91 * Destroys the module. 91 * Destroys the module.
92 */ 92 */
93 ~KCModule(); 93 ~KCModule();
94 94
95 /** 95 /**
96 * Load the configuration data into the module. 96 * Load the configuration data into the module.
97 * 97 *
98 * The load method sets the user interface elements of the 98 * The load method sets the user interface elements of the
99 * module to reflect the current settings stored in the 99 * module to reflect the current settings stored in the
100 * configuration files. 100 * configuration files.
101 * 101 *
102 * This method is invoked whenever the module should read its configuration 102 * This method is invoked whenever the module should read its configuration
103 * (most of the times from a config file) and update the user interface. 103 * (most of the times from a config file) and update the user interface.
104 * This happens when the user clicks the "Reset" button in the control 104 * This happens when the user clicks the "Reset" button in the control
105 * center, to undo all of his changes and restore the currently valid 105 * center, to undo all of his changes and restore the currently valid
106 * settings. NOTE that this is not called after the modules is loaded, 106 * settings. NOTE that this is not called after the modules is loaded,
107 * so you probably want to call this method in the constructor. 107 * so you probably want to call this method in the constructor.
108 */ 108 */
109 virtual void load(KPrefs* prefs) {}; 109 virtual void load() {};
110 110
111 /** 111 /**
112 * Save the configuration data. 112 * Save the configuration data.
113 * 113 *
114 * The save method stores the config information as shown 114 * The save method stores the config information as shown
115 * in the user interface in the config files. 115 * in the user interface in the config files.
116 * 116 *
117 * If necessary, this method also updates the running system, 117 * If necessary, this method also updates the running system,
118 * e.g. by restarting applications. 118 * e.g. by restarting applications.
119 * 119 *
120 * save is called when the user clicks "Apply" or "Ok". 120 * save is called when the user clicks "Apply" or "Ok".
121 */ 121 */
122 virtual void save(KPrefs* prefs) {}; 122 virtual void save() {};
123 123
124 /** 124 /**
125 * Sets the configuration to sensible default values. 125 * Sets the configuration to sensible default values.
126 * 126 *
127 * This method is called when the user clicks the "Default" 127 * This method is called when the user clicks the "Default"
128 * button. It should set the display to useful values. 128 * button. It should set the display to useful values.
129 */ 129 */
130 virtual void defaults(KPrefs* prefs) {}; 130 virtual void defaults() {};
131 131
132 /** 132 /**
133 * Set the configuration to system default values. 133 * Set the configuration to system default values.
134 * 134 *
135 * This method is called when the user clicks the "System-Default" 135 * This method is called when the user clicks the "System-Default"
136 * button. It should set the display to the system default values. 136 * button. It should set the display to the system default values.
137 * 137 *
138 * NOTE: The default behaviour is to call defaults(). 138 * NOTE: The default behaviour is to call defaults().
139 */ 139 */
140 virtual void sysdefaults(KPrefs* prefs) { defaults(prefs); }; 140 virtual void sysdefaults() { defaults(); };
141 141
142 /** 142 /**
143 * Return a quick-help text. 143 * Return a quick-help text.
144 * 144 *
145 * This method is called when the module is docked. 145 * This method is called when the module is docked.
146 * The quick-help text should contain a short description of the module and 146 * The quick-help text should contain a short description of the module and
147 * links to the module's help files. You can use QML formating tags in the text. 147 * links to the module's help files. You can use QML formating tags in the text.
148 * 148 *
149 * NOTE: Please make sure the quick help text gets translated (use i18n()). 149 * NOTE: Please make sure the quick help text gets translated (use i18n()).
150 */ 150 */
151 virtual QString quickHelp() const { return QString::null; }; 151 virtual QString quickHelp() const { return QString::null; };
152 152
153 /** 153 /**
154 * Returns a the KAboutData for this module 154 * Returns a the KAboutData for this module
155 * This is generally only called for the KBugReport. 155 * This is generally only called for the KBugReport.
156 * Override and have it return a pointer to a constant 156 * Override and have it return a pointer to a constant
157 */ 157 */
158//US virtual const KAboutData *aboutData() const { return 0; } 158//US virtual const KAboutData *aboutData() const { return 0; }
159 159
160 /** 160 /**
161 * Indicate which buttons will be used. 161 * Indicate which buttons will be used.
162 * 162 *
163 * The return value is a value or'ed together from 163 * The return value is a value or'ed together from
164 * the Button enumeration type. 164 * the Button enumeration type.
@@ -172,48 +172,49 @@ public:
172 * 172 *
173 * When the module must be run as root, or acts differently 173 * When the module must be run as root, or acts differently
174 * for root and a normal user, it is sometimes useful to 174 * for root and a normal user, it is sometimes useful to
175 * customize the message that appears at the top of the module 175 * customize the message that appears at the top of the module
176 * when used as a normal user. This function returns this 176 * when used as a normal user. This function returns this
177 * customized message. If none has been set, a default message 177 * customized message. If none has been set, a default message
178 * will be used. 178 * will be used.
179 * 179 *
180 * @see KCModule::setRootOnlyMsg 180 * @see KCModule::setRootOnlyMsg
181 */ 181 */
182 QString rootOnlyMsg() const; 182 QString rootOnlyMsg() const;
183 183
184 /** 184 /**
185 * Tell if KControl should show a RootOnly message when run as 185 * Tell if KControl should show a RootOnly message when run as
186 * a normal user. 186 * a normal user.
187 * 187 *
188 * In some cases, the module don't want a RootOnly message to 188 * In some cases, the module don't want a RootOnly message to
189 * appear (for example if it has already one). This function 189 * appear (for example if it has already one). This function
190 * tells KControl if a RootOnly message should be shown 190 * tells KControl if a RootOnly message should be shown
191 * 191 *
192 * @see KCModule::setUseRootOnlyMsg 192 * @see KCModule::setUseRootOnlyMsg
193 */ 193 */
194 bool useRootOnlyMsg() const; 194 bool useRootOnlyMsg() const;
195 195
196 KPrefs* getPreferences();
196 197
197//US KInstance *instance() const; 198//US KInstance *instance() const;
198 199
199signals: 200signals:
200 201
201 /** 202 /**
202 * Indicate that the state of the modules contents has changed. 203 * Indicate that the state of the modules contents has changed.
203 * 204 *
204 * This signal is emitted whenever the state of the configuration 205 * This signal is emitted whenever the state of the configuration
205 * shown in the module changes. It allows the control center to 206 * shown in the module changes. It allows the control center to
206 * keep track of unsaved changes. 207 * keep track of unsaved changes.
207 * 208 *
208 */ 209 */
209 void changed(bool state); 210 void changed(bool state);
210 211
211 /** 212 /**
212 * Indicate that the module's quickhelp has changed. 213 * Indicate that the module's quickhelp has changed.
213 * 214 *
214 * Emit this signal whenever the module's quickhelp changes. 215 * Emit this signal whenever the module's quickhelp changes.
215 * Modules implemented as tabbed dialogs might want to implement 216 * Modules implemented as tabbed dialogs might want to implement
216 * per-tab quickhelp for example. 217 * per-tab quickhelp for example.
217 * 218 *
218 */ 219 */
219 void quickHelpChanged(); 220 void quickHelpChanged();