summaryrefslogtreecommitdiff
authorzecke <zecke>2004-02-19 02:05:37 (UTC)
committer zecke <zecke>2004-02-19 02:05:37 (UTC)
commit34e732b3490bcad2cb05a1252ef5f06b3feef9ad (patch) (unidiff)
tree1114cf4d32dd0955550536f93b4054f76207c90e
parentf98fdfa6509fd1db5ea9ee834b5808ee12c8e697 (diff)
downloadopie-34e732b3490bcad2cb05a1252ef5f06b3feef9ad.zip
opie-34e732b3490bcad2cb05a1252ef5f06b3feef9ad.tar.gz
opie-34e732b3490bcad2cb05a1252ef5f06b3feef9ad.tar.bz2
Add notes for API fixes and BC stuff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/odevice.h4
-rw-r--r--libopie/otimepicker.h3
-rw-r--r--libopie/pim/ocontactaccessbackend.h9
-rw-r--r--libopie2/opiepim/backend/ocontactaccessbackend.h9
4 files changed, 24 insertions, 1 deletions
diff --git a/libopie/odevice.h b/libopie/odevice.h
index ee0b0ec..791d358 100644
--- a/libopie/odevice.h
+++ b/libopie/odevice.h
@@ -1,284 +1,286 @@
1/* This file is part of the OPIE libraries 1/* This file is part of the OPIE libraries
2 Copyright (C) 2002 Robert Griebl (sandman@handhelds.org) 2 Copyright (C) 2002 Robert Griebl (sandman@handhelds.org)
3 Copyright (C) 2003 Holger 'zecke' Freyther (zecke@handhelds.org) 3 Copyright (C) 2003 Holger 'zecke' Freyther (zecke@handhelds.org)
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either 7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version. 8 version 2 of the License, or (at your option) any later version.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20 20
21#ifndef _LIBOPIE_ODEVICE_H_ 21#ifndef _LIBOPIE_ODEVICE_H_
22#define _LIBOPIE_ODEVICE_H_ 22#define _LIBOPIE_ODEVICE_H_
23 23
24#include <qobject.h> 24#include <qobject.h>
25#include <qstring.h> 25#include <qstring.h>
26#include <qnamespace.h> 26#include <qnamespace.h>
27#include <qstrlist.h> 27#include <qstrlist.h>
28 28
29#include <opie/odevicebutton.h> 29#include <opie/odevicebutton.h>
30 30
31#include <qpe/qpeapplication.h> /* for Transformation enum.. */ 31#include <qpe/qpeapplication.h> /* for Transformation enum.. */
32 32
33class ODeviceData; 33class ODeviceData;
34 34
35namespace Opie { 35namespace Opie {
36 36
37/** 37/**
38 * The available devices 38 * The available devices
39 */ 39 */
40enum OModel { 40enum OModel {
41 Model_Unknown, // = 0 41 Model_Unknown, // = 0
42 42
43 Model_Series_Mask = 0xff000000, 43 Model_Series_Mask = 0xff000000,
44 44
45 Model_iPAQ = ( 1 << 24 ), 45 Model_iPAQ = ( 1 << 24 ),
46 46
47 Model_iPAQ_All = ( Model_iPAQ | 0xffffff ), 47 Model_iPAQ_All = ( Model_iPAQ | 0xffffff ),
48 Model_iPAQ_H31xx = ( Model_iPAQ | 0x000001 ), 48 Model_iPAQ_H31xx = ( Model_iPAQ | 0x000001 ),
49 Model_iPAQ_H36xx = ( Model_iPAQ | 0x000002 ), 49 Model_iPAQ_H36xx = ( Model_iPAQ | 0x000002 ),
50 Model_iPAQ_H37xx = ( Model_iPAQ | 0x000004 ), 50 Model_iPAQ_H37xx = ( Model_iPAQ | 0x000004 ),
51 Model_iPAQ_H38xx = ( Model_iPAQ | 0x000008 ), 51 Model_iPAQ_H38xx = ( Model_iPAQ | 0x000008 ),
52 Model_iPAQ_H39xx = ( Model_iPAQ | 0x000010 ), 52 Model_iPAQ_H39xx = ( Model_iPAQ | 0x000010 ),
53 Model_iPAQ_H5xxx = ( Model_iPAQ | 0x000011 ), 53 Model_iPAQ_H5xxx = ( Model_iPAQ | 0x000011 ),
54 54
55 Model_Jornada = ( 6 << 24 ), 55 Model_Jornada = ( 6 << 24 ),
56 Model_Jornada_56x = ( Model_Jornada | 0x000001 ), 56 Model_Jornada_56x = ( Model_Jornada | 0x000001 ),
57 57
58 Model_Zaurus = ( 2 << 24 ), 58 Model_Zaurus = ( 2 << 24 ),
59 59
60 Model_Zaurus_SL5000 = ( Model_Zaurus | 0x000001 ), 60 Model_Zaurus_SL5000 = ( Model_Zaurus | 0x000001 ),
61 Model_Zaurus_SL5500 = ( Model_Zaurus | 0x000002 ), 61 Model_Zaurus_SL5500 = ( Model_Zaurus | 0x000002 ),
62 Model_Zaurus_SLA300 = ( Model_Zaurus | 0x000003 ), 62 Model_Zaurus_SLA300 = ( Model_Zaurus | 0x000003 ),
63 Model_Zaurus_SLB600 = ( Model_Zaurus | 0x000004 ), 63 Model_Zaurus_SLB600 = ( Model_Zaurus | 0x000004 ),
64 Model_Zaurus_SLC7x0 = ( Model_Zaurus | 0x000005 ), 64 Model_Zaurus_SLC7x0 = ( Model_Zaurus | 0x000005 ),
65 65
66 Model_SIMpad = ( 3 << 24 ), 66 Model_SIMpad = ( 3 << 24 ),
67 67
68 Model_SIMpad_All = ( Model_SIMpad | 0xffffff ), 68 Model_SIMpad_All = ( Model_SIMpad | 0xffffff ),
69 Model_SIMpad_CL4 = ( Model_SIMpad | 0x000001 ), 69 Model_SIMpad_CL4 = ( Model_SIMpad | 0x000001 ),
70 Model_SIMpad_SL4 = ( Model_SIMpad | 0x000002 ), 70 Model_SIMpad_SL4 = ( Model_SIMpad | 0x000002 ),
71 Model_SIMpad_SLC = ( Model_SIMpad | 0x000004 ), 71 Model_SIMpad_SLC = ( Model_SIMpad | 0x000004 ),
72 Model_SIMpad_TSinus = ( Model_SIMpad | 0x000008 ), 72 Model_SIMpad_TSinus = ( Model_SIMpad | 0x000008 ),
73 73
74 Model_Ramses = ( 4 << 24 ), 74 Model_Ramses = ( 4 << 24 ),
75 75
76 Model_Ramses_All = ( Model_Ramses | 0xffffff ), 76 Model_Ramses_All = ( Model_Ramses | 0xffffff ),
77 Model_Ramses_MNCI = ( Model_Ramses | 0x000001 ), 77 Model_Ramses_MNCI = ( Model_Ramses | 0x000001 ),
78 78
79 Model_Yopy = ( 5 << 24 ), 79 Model_Yopy = ( 5 << 24 ),
80 80
81 Model_Yopy_All = ( Model_Yopy | 0xffffff ), 81 Model_Yopy_All = ( Model_Yopy | 0xffffff ),
82 Model_Yopy_3000 = ( Model_Yopy | 0x000001 ), 82 Model_Yopy_3000 = ( Model_Yopy | 0x000001 ),
83 Model_Yopy_3500 = ( Model_Yopy | 0x000002 ), 83 Model_Yopy_3500 = ( Model_Yopy | 0x000002 ),
84 Model_Yopy_3700 = ( Model_Yopy | 0x000003 ), 84 Model_Yopy_3700 = ( Model_Yopy | 0x000003 ),
85 85
86}; 86};
87 87
88/** 88/**
89 * The vendor of the device 89 * The vendor of the device
90 */ 90 */
91enum OVendor { 91enum OVendor {
92 Vendor_Unknown, 92 Vendor_Unknown,
93 93
94 Vendor_HP, 94 Vendor_HP,
95 Vendor_Sharp, 95 Vendor_Sharp,
96 Vendor_SIEMENS, 96 Vendor_SIEMENS,
97 Vendor_MundN, 97 Vendor_MundN,
98 Vendor_GMate, 98 Vendor_GMate,
99}; 99};
100 100
101/** 101/**
102 * The System used 102 * The System used
103 */ 103 */
104enum OSystem { 104enum OSystem {
105 System_Unknown, 105 System_Unknown,
106 106
107 System_Familiar, 107 System_Familiar,
108 System_Zaurus, 108 System_Zaurus,
109 System_OpenZaurus, 109 System_OpenZaurus,
110 System_Linupy, 110 System_Linupy,
111}; 111};
112 112
113enum OLedState { 113enum OLedState {
114 Led_Off, 114 Led_Off,
115 Led_On, 115 Led_On,
116 Led_BlinkSlow, 116 Led_BlinkSlow,
117 Led_BlinkFast 117 Led_BlinkFast
118}; 118};
119 119
120enum OLed { 120enum OLed {
121 Led_Mail, 121 Led_Mail,
122 Led_Power, 122 Led_Power,
123 Led_BlueTooth 123 Led_BlueTooth
124}; 124};
125 125
126enum OHardKey { 126enum OHardKey {
127 HardKey_Datebook = Qt::Key_F9, 127 HardKey_Datebook = Qt::Key_F9,
128 HardKey_Contacts = Qt::Key_F10, 128 HardKey_Contacts = Qt::Key_F10,
129 HardKey_Menu = Qt::Key_F11, 129 HardKey_Menu = Qt::Key_F11,
130 HardKey_Home = Qt::Key_F12, 130 HardKey_Home = Qt::Key_F12,
131 HardKey_Mail = Qt::Key_F13, 131 HardKey_Mail = Qt::Key_F13,
132 HardKey_Record = Qt::Key_F24, 132 HardKey_Record = Qt::Key_F24,
133 HardKey_Suspend = Qt::Key_F34, 133 HardKey_Suspend = Qt::Key_F34,
134 HardKey_Backlight = Qt::Key_F35, 134 HardKey_Backlight = Qt::Key_F35,
135 HardKey_Action = Qt::Key_F10, 135 HardKey_Action = Qt::Key_F10,
136 HardKey_OK = Qt::Key_F11, 136 HardKey_OK = Qt::Key_F11,
137 HardKey_End = Qt::Key_F12, 137 HardKey_End = Qt::Key_F12,
138}; 138};
139 139
140enum ODirection { 140enum ODirection {
141 CW = 0, 141 CW = 0,
142 CCW = 1, 142 CCW = 1,
143 Flip = 2, 143 Flip = 2,
144}; 144};
145 145
146enum OHingeStatus { 146enum OHingeStatus {
147 CASE_CLOSED = 3, 147 CASE_CLOSED = 3,
148 CASE_PORTRAIT = 2, 148 CASE_PORTRAIT = 2,
149 CASE_LANDSCAPE = 0, 149 CASE_LANDSCAPE = 0,
150 CASE_UNKNOWN = 1, 150 CASE_UNKNOWN = 1,
151}; 151};
152 152
153/** 153/**
154 * A singleton which gives informations about device specefic option 154 * A singleton which gives informations about device specefic option
155 * like the Hardware used, LEDs, the Base Distribution and 155 * like the Hardware used, LEDs, the Base Distribution and
156 * hardware key mappings. 156 * hardware key mappings.
157 * 157 *
158 * @short A small class for device specefic options 158 * @short A small class for device specefic options
159 * @see QObject 159 * @see QObject
160 * @author Robert Griebl 160 * @author Robert Griebl
161 * @version 1.0 161 * @version 1.0
162 */ 162 */
163class ODevice : public QObject { 163class ODevice : public QObject {
164 Q_OBJECT 164 Q_OBJECT
165 165
166private: 166private:
167 /* disable copy */ 167 /* disable copy */
168 ODevice ( const ODevice & ); 168 ODevice ( const ODevice & );
169 169
170protected: 170protected:
171 ODevice ( ); 171 ODevice ( );
172 virtual void init ( ); 172 virtual void init ( );
173 virtual void initButtons ( ); 173 virtual void initButtons ( );
174 174
175 ODeviceData *d; 175 ODeviceData *d;
176 176
177public: 177public:
178 // sandman do we want to allow destructions? -zecke? 178 // sandman do we want to allow destructions? -zecke?
179 virtual ~ODevice ( ); 179 virtual ~ODevice ( );
180 180
181 static ODevice *inst ( ); 181 static ODevice *inst ( );
182 182
183 // information 183 // information
184 184
185 QString modelString ( ) const; 185 QString modelString ( ) const;
186 OModel model ( ) const; 186 OModel model ( ) const;
187 inline OModel series ( ) const { return (OModel) ( model ( ) & Model_Series_Mask ); } 187 inline OModel series ( ) const { return (OModel) ( model ( ) & Model_Series_Mask ); }
188 188
189 QString vendorString ( ) const; 189 QString vendorString ( ) const;
190 OVendor vendor ( ) const; 190 OVendor vendor ( ) const;
191 191
192 QString systemString ( ) const; 192 QString systemString ( ) const;
193 OSystem system ( ) const; 193 OSystem system ( ) const;
194 194
195 QString systemVersionString ( ) const; 195 QString systemVersionString ( ) const;
196 196
197 virtual Transformation rotation ( ) const; 197 virtual Transformation rotation ( ) const;
198 virtual ODirection direction ( ) const; 198 virtual ODirection direction ( ) const;
199 199
200// system 200// system
201 201
202 virtual bool setSoftSuspend ( bool on ); 202 virtual bool setSoftSuspend ( bool on );
203 virtual bool suspend ( ); 203 virtual bool suspend ( );
204 204
205 virtual bool setDisplayStatus ( bool on ); 205 virtual bool setDisplayStatus ( bool on );
206 virtual bool setDisplayBrightness ( int brightness ); 206 virtual bool setDisplayBrightness ( int brightness );
207 virtual int displayBrightnessResolution ( ) const; 207 virtual int displayBrightnessResolution ( ) const;
208 virtual bool setDisplayContrast ( int contrast ); 208 virtual bool setDisplayContrast ( int contrast );
209 virtual int displayContrastResolution ( ) const; 209 virtual int displayContrastResolution ( ) const;
210 210
211 // don't add new virtual methods, use this: 211 // don't add new virtual methods, use this:
212 ///*virtual */ void boo(int i ) { return virtual_hook(1,&i); }; 212 ///*virtual */ void boo(int i ) { return virtual_hook(1,&i); };
213 // and in your subclass do do overwrite 213 // and in your subclass do do overwrite
214 //protected virtual int virtual_hook(int, void *) 214 //protected virtual int virtual_hook(int, void *)
215 // which is defined below 215 // which is defined below
216 216
217 // input / output 217 // input / output
218 //FIXME playAlarmSound and al might be better -zecke 218 //FIXME playAlarmSound and al might be better -zecke
219 virtual void alarmSound ( ); 219 virtual void alarmSound ( );
220 virtual void keySound ( ); 220 virtual void keySound ( );
221 virtual void touchSound ( ); 221 virtual void touchSound ( );
222 222
223 virtual QValueList <OLed> ledList ( ) const; 223 virtual QValueList <OLed> ledList ( ) const;
224 virtual QValueList <OLedState> ledStateList ( OLed led ) const; 224 virtual QValueList <OLedState> ledStateList ( OLed led ) const;
225 virtual OLedState ledState ( OLed led ) const; 225 virtual OLedState ledState ( OLed led ) const;
226 virtual bool setLedState ( OLed led, OLedState st ); 226 virtual bool setLedState ( OLed led, OLedState st );
227 227
228 virtual bool hasLightSensor ( ) const; 228 virtual bool hasLightSensor ( ) const;
229 virtual int readLightSensor ( ); 229 virtual int readLightSensor ( );
230 virtual int lightSensorResolution ( ) const; 230 virtual int lightSensorResolution ( ) const;
231 231
232 virtual bool hasHingeSensor ( ) const; 232 virtual bool hasHingeSensor ( ) const;
233 virtual OHingeStatus readHingeSensor ( ); 233 virtual OHingeStatus readHingeSensor ( );
234 234
235 const QStrList &allowedCpuFrequencies() const; 235 const QStrList &allowedCpuFrequencies() const;
236 bool setCurrentCpuFrequency(uint index); 236 bool setCurrentCpuFrequency(uint index);
237 237
238 /** 238 /**
239 * Returns the available buttons on this device. The number and location 239 * Returns the available buttons on this device. The number and location
240 * of buttons will vary depending on the device. Button numbers will be assigned 240 * of buttons will vary depending on the device. Button numbers will be assigned
241 * by the device manufacturer and will be from most preferred button to least preffered 241 * by the device manufacturer and will be from most preferred button to least preffered
242 * button. Note that this list only contains "user mappable" buttons. 242 * button. Note that this list only contains "user mappable" buttons.
243 *
244 * @todo ### make const
243 */ 245 */
244 const QValueList<ODeviceButton> &buttons ( ) /* ### make const */; 246 const QValueList<ODeviceButton> &buttons ( ) /** /todo ### make const */;
245 247
246 /** 248 /**
247 * Returns the DeviceButton for the \a keyCode. If \a keyCode is not found, it 249 * Returns the DeviceButton for the \a keyCode. If \a keyCode is not found, it
248 * returns 0L 250 * returns 0L
249 */ 251 */
250 const ODeviceButton *buttonForKeycode ( ushort keyCode ); 252 const ODeviceButton *buttonForKeycode ( ushort keyCode );
251 253
252 /** 254 /**
253 * Reassigns the pressed action for \a button. To return to the factory 255 * Reassigns the pressed action for \a button. To return to the factory
254 * default pass an empty string as \a qcopMessage. 256 * default pass an empty string as \a qcopMessage.
255 */ 257 */
256 void remapPressedAction ( int button, const OQCopMessage &qcopMessage ); 258 void remapPressedAction ( int button, const OQCopMessage &qcopMessage );
257 259
258 /** 260 /**
259 * Reassigns the held action for \a button. To return to the factory 261 * Reassigns the held action for \a button. To return to the factory
260 * default pass an empty string as \a qcopMessage. 262 * default pass an empty string as \a qcopMessage.
261 */ 263 */
262 void remapHeldAction ( int button, const OQCopMessage &qcopMessage ); 264 void remapHeldAction ( int button, const OQCopMessage &qcopMessage );
263 265
264 /** 266 /**
265 * How long (in ms) you have to press a button for a "hold" action 267 * How long (in ms) you have to press a button for a "hold" action
266 */ 268 */
267 uint buttonHoldTime ( ) const; 269 uint buttonHoldTime ( ) const;
268 270
269signals: 271signals:
270 void buttonMappingChanged ( ); 272 void buttonMappingChanged ( );
271 273
272private slots: 274private slots:
273 void systemMessage ( const QCString &, const QByteArray & ); 275 void systemMessage ( const QCString &, const QByteArray & );
274 276
275protected: 277protected:
276 void reloadButtonMapping ( ); 278 void reloadButtonMapping ( );
277 /* ugly virtual hook */ 279 /* ugly virtual hook */
278 virtual void virtual_hook( int id, void* data ); 280 virtual void virtual_hook( int id, void* data );
279}; 281};
280 282
281} 283}
282 284
283#endif 285#endif
284 286
diff --git a/libopie/otimepicker.h b/libopie/otimepicker.h
index 6a9e040..8df7d10 100644
--- a/libopie/otimepicker.h
+++ b/libopie/otimepicker.h
@@ -1,83 +1,86 @@
1#ifndef OTIMEPICKER_H 1#ifndef OTIMEPICKER_H
2#define OTIMEPICKER_H 2#define OTIMEPICKER_H
3 3
4#include <qwidget.h> 4#include <qwidget.h>
5#include <qvaluelist.h> 5#include <qvaluelist.h>
6#include <qdatetime.h> 6#include <qdatetime.h>
7#include <qdialog.h> 7#include <qdialog.h>
8 8
9#include <opie/oclickablelabel.h> 9#include <opie/oclickablelabel.h>
10#include "otimepickerbase.h" 10#include "otimepickerbase.h"
11 11
12/** 12/**
13 * A class to pick time. It uses clickable labels 13 * A class to pick time. It uses clickable labels
14 * internally to allow a quick selection of a time. 14 * internally to allow a quick selection of a time.
15 * A time can be selected by two clicks of a user 15 * A time can be selected by two clicks of a user
16 * 16 *
17 * @short A widget to quickly pick a QTime 17 * @short A widget to quickly pick a QTime
18 * @version 1.0 18 * @version 1.0
19 * @see QWidget 19 * @see QWidget
20 * @see QTime 20 * @see QTime
21 * @author Hakan Ardo, Stefan Eilers 21 * @author Hakan Ardo, Stefan Eilers
22 */ 22 */
23class OTimePicker: public QWidget { 23class OTimePicker: public QWidget {
24 Q_OBJECT 24 Q_OBJECT
25 25
26 public: 26 public:
27 OTimePicker(QWidget* parent = 0, const char* name = 0, 27 OTimePicker(QWidget* parent = 0, const char* name = 0,
28 WFlags fl = 0); 28 WFlags fl = 0);
29 29
30 public slots: 30 public slots:
31 void setHour(int h); 31 void setHour(int h);
32 void setMinute(int m); 32 void setMinute(int m);
33 void setTime( const QTime& ); 33 void setTime( const QTime& );
34 void setTime( int h, int m ); 34 void setTime( int h, int m );
35 35
36 public: 36 public:
37 QTime time()const; 37 QTime time()const;
38 38
39 private: 39 private:
40 QValueList<OClickableLabel *> hourLst; 40 QValueList<OClickableLabel *> hourLst;
41 QValueList<OClickableLabel *> minuteLst; 41 QValueList<OClickableLabel *> minuteLst;
42 QTime tm; 42 QTime tm;
43 struct Private; 43 struct Private;
44 Private *d; 44 Private *d;
45 45
46 private slots: 46 private slots:
47 void slotHour(bool b); 47 void slotHour(bool b);
48 void slotMinute(bool b); 48 void slotMinute(bool b);
49 49
50 signals: 50 signals:
51 /** 51 /**
52 * gets emitted when the time got changed by the user 52 * gets emitted when the time got changed by the user
53 */ 53 */
54 void timeChanged(const QTime &); 54 void timeChanged(const QTime &);
55}; 55};
56 56
57/** 57/**
58 * 58 *
59 * @short A small dialog to pick a time 59 * @short A small dialog to pick a time
60 * @version 1.0 60 * @version 1.0
61 * @author Stefan Eilers 61 * @author Stefan Eilers
62 */ 62 */
63 63
64class OTimePickerDialog: public OTimePickerDialogBase { 64class OTimePickerDialog: public OTimePickerDialogBase {
65 Q_OBJECT 65 Q_OBJECT
66 66
67 public: 67 public:
68 OTimePickerDialog ( QWidget* parent = 0, const char* name = NULL, WFlags fl = 0 ); 68 OTimePickerDialog ( QWidget* parent = 0, const char* name = NULL, WFlags fl = 0 );
69 /**
70 * @todo make it non line! See KDE guide for BC
71 */
69 ~OTimePickerDialog() { }; 72 ~OTimePickerDialog() { };
70 73
71 QTime time()const; 74 QTime time()const;
72 75
73 public slots: 76 public slots:
74 void setTime( const QTime& time ); 77 void setTime( const QTime& time );
75 void setHour( const QString& hour ); 78 void setHour( const QString& hour );
76 void setMinute( const QString& minute ); 79 void setMinute( const QString& minute );
77 80
78 private: 81 private:
79 QTime m_time; 82 QTime m_time;
80 class Private; 83 class Private;
81 Private* d; 84 Private* d;
82}; 85};
83#endif 86#endif
diff --git a/libopie/pim/ocontactaccessbackend.h b/libopie/pim/ocontactaccessbackend.h
index 280e05c..0eac6dc 100644
--- a/libopie/pim/ocontactaccessbackend.h
+++ b/libopie/pim/ocontactaccessbackend.h
@@ -1,119 +1,128 @@
1/** 1/**
2 * The class responsible for managing a backend. 2 * The class responsible for managing a backend.
3 * The implementation of this abstract class contains 3 * The implementation of this abstract class contains
4 * the complete database handling. 4 * the complete database handling.
5 * 5 *
6 * Copyright (c) 2002 by Stefan Eilers (Eilers.Stefan@epost.de) 6 * Copyright (c) 2002 by Stefan Eilers (Eilers.Stefan@epost.de)
7 * Copyright (c) 2002 by Holger Freyther (zecke@handhelds.org) 7 * Copyright (c) 2002 by Holger Freyther (zecke@handhelds.org)
8 * 8 *
9 * ===================================================================== 9 * =====================================================================
10 *This program is free software; you can redistribute it and/or 10 *This program is free software; you can redistribute it and/or
11 *modify it under the terms of the GNU Library General Public 11 *modify it under the terms of the GNU Library General Public
12 * License as published by the Free Software Foundation; 12 * License as published by the Free Software Foundation;
13 * either version 2 of the License, or (at your option) any later 13 * either version 2 of the License, or (at your option) any later
14 * version. 14 * version.
15 * ===================================================================== 15 * =====================================================================
16 * ToDo: Define enum for query settings 16 * ToDo: Define enum for query settings
17 * ===================================================================== 17 * =====================================================================
18 * Version: $Id$ 18 * Version: $Id$
19 * ===================================================================== 19 * =====================================================================
20 * History: 20 * History:
21 * $Log$ 21 * $Log$
22 * Revision 1.7 2004/02/19 02:05:37 zecke
23 * Add notes for API fixes and BC stuff
24 *
22 * Revision 1.6 2003/08/01 12:30:16 eilers 25 * Revision 1.6 2003/08/01 12:30:16 eilers
23 * Merging changes from BRANCH_1_0 to HEAD 26 * Merging changes from BRANCH_1_0 to HEAD
24 * 27 *
25 * Revision 1.5.4.1 2003/06/30 14:34:19 eilers 28 * Revision 1.5.4.1 2003/06/30 14:34:19 eilers
26 * Patches from Zecke: 29 * Patches from Zecke:
27 * Fixing and cleaning up extraMap handling 30 * Fixing and cleaning up extraMap handling
28 * Adding d_ptr for binary compatibility in the future 31 * Adding d_ptr for binary compatibility in the future
29 * 32 *
30 * Revision 1.5 2003/04/13 18:07:10 zecke 33 * Revision 1.5 2003/04/13 18:07:10 zecke
31 * More API doc 34 * More API doc
32 * QString -> const QString& 35 * QString -> const QString&
33 * QString = 0l -> QString::null 36 * QString = 0l -> QString::null
34 * 37 *
35 * Revision 1.4 2002/11/13 14:14:51 eilers 38 * Revision 1.4 2002/11/13 14:14:51 eilers
36 * Added sorted for Contacts.. 39 * Added sorted for Contacts..
37 * 40 *
38 * Revision 1.3 2002/11/01 15:10:42 eilers 41 * Revision 1.3 2002/11/01 15:10:42 eilers
39 * Added regExp-search in database for all fields in a contact. 42 * Added regExp-search in database for all fields in a contact.
40 * 43 *
41 * Revision 1.2 2002/10/07 17:34:24 eilers 44 * Revision 1.2 2002/10/07 17:34:24 eilers
42 * added OBackendFactory for advanced backend access 45 * added OBackendFactory for advanced backend access
43 * 46 *
44 * Revision 1.1 2002/09/27 17:11:44 eilers 47 * Revision 1.1 2002/09/27 17:11:44 eilers
45 * Added API for accessing the Contact-Database ! It is compiling, but 48 * Added API for accessing the Contact-Database ! It is compiling, but
46 * please do not expect that anything is working ! 49 * please do not expect that anything is working !
47 * I will debug that stuff in the next time .. 50 * I will debug that stuff in the next time ..
48 * Please read README_COMPILE for compiling ! 51 * Please read README_COMPILE for compiling !
49 * 52 *
50 * ===================================================================== 53 * =====================================================================
51 * 54 *
52 */ 55 */
53 56
54#ifndef _OCONTACTACCESSBACKEND_H_ 57#ifndef _OCONTACTACCESSBACKEND_H_
55#define _OCONTACTACCESSBACKEND_H_ 58#define _OCONTACTACCESSBACKEND_H_
56 59
57#include "ocontact.h" 60#include "ocontact.h"
58#include "opimaccessbackend.h" 61#include "opimaccessbackend.h"
59 62
60#include <qregexp.h> 63#include <qregexp.h>
61 64
62/** 65/**
63 * This class represents the interface of all Contact Backends. 66 * This class represents the interface of all Contact Backends.
64 * Derivates of this class will be used to access the contacts. 67 * Derivates of this class will be used to access the contacts.
65 * As implementation currently XML and vCard exist. This class needs to be implemented 68 * As implementation currently XML and vCard exist. This class needs to be implemented
66 * if you want to provide your own storage. 69 * if you want to provide your own storage.
67 * In all queries a list of uids is passed on instead of loading the actual record! 70 * In all queries a list of uids is passed on instead of loading the actual record!
68 * 71 *
69 * @see OContactAccessBackend_VCard 72 * @see OContactAccessBackend_VCard
70 * @see OContactAccessBackend_XML 73 * @see OContactAccessBackend_XML
71 */ 74 */
72class OContactAccessBackend: public OPimAccessBackend<OContact> { 75class OContactAccessBackend: public OPimAccessBackend<OContact> {
73 public: 76 public:
77 /**
78 * @todo make non line in regard to BC guide of KDE
79 */
74 OContactAccessBackend() {} 80 OContactAccessBackend() {}
81 /**
82 * @todo make non inline in regard to the BC guide of KDE
83 */
75 virtual ~OContactAccessBackend() {} 84 virtual ~OContactAccessBackend() {}
76 85
77 86
78 /** 87 /**
79 * Return if database was changed externally. 88 * Return if database was changed externally.
80 * This may just make sense on file based databases like a XML-File. 89 * This may just make sense on file based databases like a XML-File.
81 * It is used to prevent to overwrite the current database content 90 * It is used to prevent to overwrite the current database content
82 * if the file was already changed by something else ! 91 * if the file was already changed by something else !
83 * If this happens, we have to reload before save our data. 92 * If this happens, we have to reload before save our data.
84 * If we use real databases, this should be handled by the database 93 * If we use real databases, this should be handled by the database
85 * management system themselve, therefore this function should always return false in 94 * management system themselve, therefore this function should always return false in
86 * this case. It is not our problem to handle this conflict ... 95 * this case. It is not our problem to handle this conflict ...
87 * @return <i>true</i> if the database was changed and if save without reload will 96 * @return <i>true</i> if the database was changed and if save without reload will
88 * be dangerous. <i>false</i> if the database was not changed or it is save to write 97 * be dangerous. <i>false</i> if the database was not changed or it is save to write
89 * in this situation. 98 * in this situation.
90 */ 99 */
91 virtual bool wasChangedExternally() = 0; 100 virtual bool wasChangedExternally() = 0;
92 101
93 virtual QArray<int> matchRegexp( const QRegExp &r ) const = 0; 102 virtual QArray<int> matchRegexp( const QRegExp &r ) const = 0;
94 103
95 /** 104 /**
96 * Return all possible settings. 105 * Return all possible settings.
97 * @return All settings provided by the current backend 106 * @return All settings provided by the current backend
98 * (i.e.: query_WildCards & query_IgnoreCase) 107 * (i.e.: query_WildCards & query_IgnoreCase)
99 */ 108 */
100 virtual const uint querySettings() = 0; 109 virtual const uint querySettings() = 0;
101 110
102 /** 111 /**
103 * Check whether settings are correct. 112 * Check whether settings are correct.
104 * @return <i>true</i> if the given settings are correct and possible. 113 * @return <i>true</i> if the given settings are correct and possible.
105 */ 114 */
106 virtual bool hasQuerySettings (uint querySettings) const = 0; 115 virtual bool hasQuerySettings (uint querySettings) const = 0;
107 116
108 /** 117 /**
109 * FIXME!!! 118 * FIXME!!!
110 * Returns a sorted list of records either ascendinf or descending for a giving criteria and category 119 * Returns a sorted list of records either ascendinf or descending for a giving criteria and category
111 */ 120 */
112 virtual QArray<int> sorted( bool ascending, int sortOrder, int sortFilter, int cat ) = 0; 121 virtual QArray<int> sorted( bool ascending, int sortOrder, int sortFilter, int cat ) = 0;
113 122
114 123
115private: 124private:
116 class Private; 125 class Private;
117 Private *d; 126 Private *d;
118}; 127};
119#endif 128#endif
diff --git a/libopie2/opiepim/backend/ocontactaccessbackend.h b/libopie2/opiepim/backend/ocontactaccessbackend.h
index 280e05c..0eac6dc 100644
--- a/libopie2/opiepim/backend/ocontactaccessbackend.h
+++ b/libopie2/opiepim/backend/ocontactaccessbackend.h
@@ -1,119 +1,128 @@
1/** 1/**
2 * The class responsible for managing a backend. 2 * The class responsible for managing a backend.
3 * The implementation of this abstract class contains 3 * The implementation of this abstract class contains
4 * the complete database handling. 4 * the complete database handling.
5 * 5 *
6 * Copyright (c) 2002 by Stefan Eilers (Eilers.Stefan@epost.de) 6 * Copyright (c) 2002 by Stefan Eilers (Eilers.Stefan@epost.de)
7 * Copyright (c) 2002 by Holger Freyther (zecke@handhelds.org) 7 * Copyright (c) 2002 by Holger Freyther (zecke@handhelds.org)
8 * 8 *
9 * ===================================================================== 9 * =====================================================================
10 *This program is free software; you can redistribute it and/or 10 *This program is free software; you can redistribute it and/or
11 *modify it under the terms of the GNU Library General Public 11 *modify it under the terms of the GNU Library General Public
12 * License as published by the Free Software Foundation; 12 * License as published by the Free Software Foundation;
13 * either version 2 of the License, or (at your option) any later 13 * either version 2 of the License, or (at your option) any later
14 * version. 14 * version.
15 * ===================================================================== 15 * =====================================================================
16 * ToDo: Define enum for query settings 16 * ToDo: Define enum for query settings
17 * ===================================================================== 17 * =====================================================================
18 * Version: $Id$ 18 * Version: $Id$
19 * ===================================================================== 19 * =====================================================================
20 * History: 20 * History:
21 * $Log$ 21 * $Log$
22 * Revision 1.7 2004/02/19 02:05:37 zecke
23 * Add notes for API fixes and BC stuff
24 *
22 * Revision 1.6 2003/08/01 12:30:16 eilers 25 * Revision 1.6 2003/08/01 12:30:16 eilers
23 * Merging changes from BRANCH_1_0 to HEAD 26 * Merging changes from BRANCH_1_0 to HEAD
24 * 27 *
25 * Revision 1.5.4.1 2003/06/30 14:34:19 eilers 28 * Revision 1.5.4.1 2003/06/30 14:34:19 eilers
26 * Patches from Zecke: 29 * Patches from Zecke:
27 * Fixing and cleaning up extraMap handling 30 * Fixing and cleaning up extraMap handling
28 * Adding d_ptr for binary compatibility in the future 31 * Adding d_ptr for binary compatibility in the future
29 * 32 *
30 * Revision 1.5 2003/04/13 18:07:10 zecke 33 * Revision 1.5 2003/04/13 18:07:10 zecke
31 * More API doc 34 * More API doc
32 * QString -> const QString& 35 * QString -> const QString&
33 * QString = 0l -> QString::null 36 * QString = 0l -> QString::null
34 * 37 *
35 * Revision 1.4 2002/11/13 14:14:51 eilers 38 * Revision 1.4 2002/11/13 14:14:51 eilers
36 * Added sorted for Contacts.. 39 * Added sorted for Contacts..
37 * 40 *
38 * Revision 1.3 2002/11/01 15:10:42 eilers 41 * Revision 1.3 2002/11/01 15:10:42 eilers
39 * Added regExp-search in database for all fields in a contact. 42 * Added regExp-search in database for all fields in a contact.
40 * 43 *
41 * Revision 1.2 2002/10/07 17:34:24 eilers 44 * Revision 1.2 2002/10/07 17:34:24 eilers
42 * added OBackendFactory for advanced backend access 45 * added OBackendFactory for advanced backend access
43 * 46 *
44 * Revision 1.1 2002/09/27 17:11:44 eilers 47 * Revision 1.1 2002/09/27 17:11:44 eilers
45 * Added API for accessing the Contact-Database ! It is compiling, but 48 * Added API for accessing the Contact-Database ! It is compiling, but
46 * please do not expect that anything is working ! 49 * please do not expect that anything is working !
47 * I will debug that stuff in the next time .. 50 * I will debug that stuff in the next time ..
48 * Please read README_COMPILE for compiling ! 51 * Please read README_COMPILE for compiling !
49 * 52 *
50 * ===================================================================== 53 * =====================================================================
51 * 54 *
52 */ 55 */
53 56
54#ifndef _OCONTACTACCESSBACKEND_H_ 57#ifndef _OCONTACTACCESSBACKEND_H_
55#define _OCONTACTACCESSBACKEND_H_ 58#define _OCONTACTACCESSBACKEND_H_
56 59
57#include "ocontact.h" 60#include "ocontact.h"
58#include "opimaccessbackend.h" 61#include "opimaccessbackend.h"
59 62
60#include <qregexp.h> 63#include <qregexp.h>
61 64
62/** 65/**
63 * This class represents the interface of all Contact Backends. 66 * This class represents the interface of all Contact Backends.
64 * Derivates of this class will be used to access the contacts. 67 * Derivates of this class will be used to access the contacts.
65 * As implementation currently XML and vCard exist. This class needs to be implemented 68 * As implementation currently XML and vCard exist. This class needs to be implemented
66 * if you want to provide your own storage. 69 * if you want to provide your own storage.
67 * In all queries a list of uids is passed on instead of loading the actual record! 70 * In all queries a list of uids is passed on instead of loading the actual record!
68 * 71 *
69 * @see OContactAccessBackend_VCard 72 * @see OContactAccessBackend_VCard
70 * @see OContactAccessBackend_XML 73 * @see OContactAccessBackend_XML
71 */ 74 */
72class OContactAccessBackend: public OPimAccessBackend<OContact> { 75class OContactAccessBackend: public OPimAccessBackend<OContact> {
73 public: 76 public:
77 /**
78 * @todo make non line in regard to BC guide of KDE
79 */
74 OContactAccessBackend() {} 80 OContactAccessBackend() {}
81 /**
82 * @todo make non inline in regard to the BC guide of KDE
83 */
75 virtual ~OContactAccessBackend() {} 84 virtual ~OContactAccessBackend() {}
76 85
77 86
78 /** 87 /**
79 * Return if database was changed externally. 88 * Return if database was changed externally.
80 * This may just make sense on file based databases like a XML-File. 89 * This may just make sense on file based databases like a XML-File.
81 * It is used to prevent to overwrite the current database content 90 * It is used to prevent to overwrite the current database content
82 * if the file was already changed by something else ! 91 * if the file was already changed by something else !
83 * If this happens, we have to reload before save our data. 92 * If this happens, we have to reload before save our data.
84 * If we use real databases, this should be handled by the database 93 * If we use real databases, this should be handled by the database
85 * management system themselve, therefore this function should always return false in 94 * management system themselve, therefore this function should always return false in
86 * this case. It is not our problem to handle this conflict ... 95 * this case. It is not our problem to handle this conflict ...
87 * @return <i>true</i> if the database was changed and if save without reload will 96 * @return <i>true</i> if the database was changed and if save without reload will
88 * be dangerous. <i>false</i> if the database was not changed or it is save to write 97 * be dangerous. <i>false</i> if the database was not changed or it is save to write
89 * in this situation. 98 * in this situation.
90 */ 99 */
91 virtual bool wasChangedExternally() = 0; 100 virtual bool wasChangedExternally() = 0;
92 101
93 virtual QArray<int> matchRegexp( const QRegExp &r ) const = 0; 102 virtual QArray<int> matchRegexp( const QRegExp &r ) const = 0;
94 103
95 /** 104 /**
96 * Return all possible settings. 105 * Return all possible settings.
97 * @return All settings provided by the current backend 106 * @return All settings provided by the current backend
98 * (i.e.: query_WildCards & query_IgnoreCase) 107 * (i.e.: query_WildCards & query_IgnoreCase)
99 */ 108 */
100 virtual const uint querySettings() = 0; 109 virtual const uint querySettings() = 0;
101 110
102 /** 111 /**
103 * Check whether settings are correct. 112 * Check whether settings are correct.
104 * @return <i>true</i> if the given settings are correct and possible. 113 * @return <i>true</i> if the given settings are correct and possible.
105 */ 114 */
106 virtual bool hasQuerySettings (uint querySettings) const = 0; 115 virtual bool hasQuerySettings (uint querySettings) const = 0;
107 116
108 /** 117 /**
109 * FIXME!!! 118 * FIXME!!!
110 * Returns a sorted list of records either ascendinf or descending for a giving criteria and category 119 * Returns a sorted list of records either ascendinf or descending for a giving criteria and category
111 */ 120 */
112 virtual QArray<int> sorted( bool ascending, int sortOrder, int sortFilter, int cat ) = 0; 121 virtual QArray<int> sorted( bool ascending, int sortOrder, int sortFilter, int cat ) = 0;
113 122
114 123
115private: 124private:
116 class Private; 125 class Private;
117 Private *d; 126 Private *d;
118}; 127};
119#endif 128#endif