summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--ChangeLog11
-rw-r--r--library/datebookmonth.cpp9
2 files changed, 19 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 4f347db..3b0f1d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,192 +1,203 @@
1 2005-??-??Opie 1.2.2
2
3
4 New Features
5 ------------
6
7
8 Fixed Bugs
9 ----------
10 * #1695 - Date selector use too small fontsize on VGA screen (hrw)
11
1 2005-09-11Opie 1.2.1 12 2005-09-11Opie 1.2.1
2 13
3 14
4 New Features 15 New Features
5 ------------ 16 ------------
6 * OpieStumbler: Scans WiFi networks using the wireless extension scanning (skyhusker) 17 * OpieStumbler: Scans WiFi networks using the wireless extension scanning (skyhusker)
7 * Opie-Reader: Support for document formats ArriereGo and Reb, add flite output (tim,pohly) 18 * Opie-Reader: Support for document formats ArriereGo and Reb, add flite output (tim,pohly)
8 * Opie-Networksettings: Add support for wlan-ng devices and improve WEP handling (Dirk Opfer) 19 * Opie-Networksettings: Add support for wlan-ng devices and improve WEP handling (Dirk Opfer)
9 * Wellenreiter: Remove Joining networks - use OpieStumbler for that (mickeyl) 20 * Wellenreiter: Remove Joining networks - use OpieStumbler for that (mickeyl)
10 * Opie-Mobilemsg has gone unsupported - it never really worked and there will be a replacement (mickeyl) 21 * Opie-Mobilemsg has gone unsupported - it never really worked and there will be a replacement (mickeyl)
11 * Opie-Tabmanager has gone unsupported - it barely works and there is not much of a use of it anyway (mickeyl) 22 * Opie-Tabmanager has gone unsupported - it barely works and there is not much of a use of it anyway (mickeyl)
12 * Checkbook: Added configuration option to use smaller font for checkbook transaction tab (hrw) 23 * Checkbook: Added configuration option to use smaller font for checkbook transaction tab (hrw)
13 * ZSafe: Made UI conform to Opie standards (drw) 24 * ZSafe: Made UI conform to Opie standards (drw)
14 * Today Addressbook plugin: Fixed configuration to show/not show birthdays, use checkboxes for selection (hrw) 25 * Today Addressbook plugin: Fixed configuration to show/not show birthdays, use checkboxes for selection (hrw)
15 * Opie-Console: Read initial fixed font configuration from qpe.conf (mickeyl) 26 * Opie-Console: Read initial fixed font configuration from qpe.conf (mickeyl)
16 * Opie-PcmciaApplet: Configure insert/resume actions and bind unsupported cards (mickeyl) 27 * Opie-PcmciaApplet: Configure insert/resume actions and bind unsupported cards (mickeyl)
17 * SysInfo: Remove CPU tab and add Devices tab instead (mickeyl) 28 * SysInfo: Remove CPU tab and add Devices tab instead (mickeyl)
18 * Opie-smb: Added Opie front end for Samba (ljp) 29 * Opie-smb: Added Opie front end for Samba (ljp)
19 * Opie-Bluetooth: Replace obex send implementation and patch libopieobex and the bluetoothapplet (Michael Haynie) 30 * Opie-Bluetooth: Replace obex send implementation and patch libopieobex and the bluetoothapplet (Michael Haynie)
20 * Opieplayer: rudimentary podcast support (ljp) 31 * Opieplayer: rudimentary podcast support (ljp)
21 32
22 Fixed Bugs 33 Fixed Bugs
23 ---------- 34 ----------
24 * #1377 - Suspend Powermanagement when switched to another VT (mickeyl) 35 * #1377 - Suspend Powermanagement when switched to another VT (mickeyl)
25 - We actually suspend the complete Opie now in that case. 36 - We actually suspend the complete Opie now in that case.
26 * #1384 - Battery status updated improperly when charging (skyhusker) 37 * #1384 - Battery status updated improperly when charging (skyhusker)
27 * #1476 - Wrong order of application entries in the O-menu (skyhusker) 38 * #1476 - Wrong order of application entries in the O-menu (skyhusker)
28 * #1514 - Remove usage of cardmon/pcmcia picture in applications. pcmcia is now an inline picture (mickeyl) 39 * #1514 - Remove usage of cardmon/pcmcia picture in applications. pcmcia is now an inline picture (mickeyl)
29 * #1535- Missing line break and unnecessary location shown with Today-Calendar plugin (deller) 40 * #1535- Missing line break and unnecessary location shown with Today-Calendar plugin (deller)
30 * #1543 - Time Settings: "predict" tab is displayed twice after reopen (hrw) 41 * #1543 - Time Settings: "predict" tab is displayed twice after reopen (hrw)
31 * #1546 - Battery applet popup is not always large enough to show jacket remaining info (skyhusker) 42 * #1546 - Battery applet popup is not always large enough to show jacket remaining info (skyhusker)
32 * #1557 - Light&Power-Settings don't store warning intervall and warning levels (skyhusker) 43 * #1557 - Light&Power-Settings don't store warning intervall and warning levels (skyhusker)
33 * #1565 - crash-fix in odevice.cpp while scanning the distribution table (deller) 44 * #1565 - crash-fix in odevice.cpp while scanning the distribution table (deller)
34 * #1614 - Make Opie-console start in $HOME instead of / (skyhusker) 45 * #1614 - Make Opie-console start in $HOME instead of / (skyhusker)
35 * #1635 - opie-today, datebook-plugin does not show notes (skyhusker) 46 * #1635 - opie-today, datebook-plugin does not show notes (skyhusker)
36 * #1665 - Opie-IRC displays the host prepended to the message when peer is using and ipv6 address (skyhusker) 47 * #1665 - Opie-IRC displays the host prepended to the message when peer is using and ipv6 address (skyhusker)
37 * #1666 - Opie-IRC does not allow to add !channels in config asautojoin ones (skyhusker) 48 * #1666 - Opie-IRC does not allow to add !channels in config asautojoin ones (skyhusker)
38 * #1667 - Opie-IRC does not show messages from !channel (skyhusker) 49 * #1667 - Opie-IRC does not show messages from !channel (skyhusker)
39 * #1679 - Security PIN plugin is QVGA sized (hrw) 50 * #1679 - Security PIN plugin is QVGA sized (hrw)
40 * #1682 - Properly resize tab control in OTabWidget (drw) 51 * #1682 - Properly resize tab control in OTabWidget (drw)
41 * n.a. - always show volume and wireless applet popups inside visible screen (deller) 52 * n.a. - always show volume and wireless applet popups inside visible screen (deller)
42 * n.a. - scale O-Menu-Applets appropriately (mickeyl) 53 * n.a. - scale O-Menu-Applets appropriately (mickeyl)
43 * n.a. - libopienet: fix bugs in wireless scanning and setting SSID (skyhusker) 54 * n.a. - libopienet: fix bugs in wireless scanning and setting SSID (skyhusker)
44 * n.a. - Wellenreiter: relax WE version matching test a bit (mickeyl) 55 * n.a. - Wellenreiter: relax WE version matching test a bit (mickeyl)
45 * n.a. - scale BluezApplet appropriately and use larger icons (mickeyl) 56 * n.a. - scale BluezApplet appropriately and use larger icons (mickeyl)
46 * n.a. - memoryapplet: fix crash in memoryapplet on kernels without swap support (seneca cunningham) 57 * n.a. - memoryapplet: fix crash in memoryapplet on kernels without swap support (seneca cunningham)
47 * n.a. - networksettings: ignore hostap control interfaces wifi* (mickeyl) 58 * n.a. - networksettings: ignore hostap control interfaces wifi* (mickeyl)
48 * n.a. - Today Addressbook plugin fix configuration to show/not show birthdays, use checkboxes for selection (hrw) 59 * n.a. - Today Addressbook plugin fix configuration to show/not show birthdays, use checkboxes for selection (hrw)
49 * n.a. - remove hardcoded font size from netsystemtime (hrw) 60 * n.a. - remove hardcoded font size from netsystemtime (hrw)
50 * n.a. - remove hardcoded font size from checkbook graphs (hrw) 61 * n.a. - remove hardcoded font size from checkbook graphs (hrw)
51 * n.a. - Dagger - fixes for Sword 1.5.8, morph tag x-refs, closing last tab crash (drw) 62 * n.a. - Dagger - fixes for Sword 1.5.8, morph tag x-refs, closing last tab crash (drw)
52 63
53 64
54 Internal 65 Internal
55 -------- 66 --------
56 * Make BluezApplet use OTaskbarApplet (mickeyl) 67 * Make BluezApplet use OTaskbarApplet (mickeyl)
57 * libopiecore: rewrite OFileNotification to use the Linux 2.6 inotify interface (mickeyl) 68 * libopiecore: rewrite OFileNotification to use the Linux 2.6 inotify interface (mickeyl)
58 * libopiecore: add ODirNotification - recursive directory notifications (mickeyl) 69 * libopiecore: add ODirNotification - recursive directory notifications (mickeyl)
59 * libopienet: Skip hostap control interfaces 'wifi' and improve robustness in ONetworkInterface (mickeyl) 70 * libopienet: Skip hostap control interfaces 'wifi' and improve robustness in ONetworkInterface (mickeyl)
60 * libopieui: Remove OVersatileView and OVersatileViewItem (mickeyl) 71 * libopieui: Remove OVersatileView and OVersatileViewItem (mickeyl)
61 * libopienet: Miscellaneous API cleanups (mickeyl) 72 * libopienet: Miscellaneous API cleanups (mickeyl)
62 * libopiecore: Add linux pcmcia system abstraction classes (mickeyl) 73 * libopiecore: Add linux pcmcia system abstraction classes (mickeyl)
63 * libopiecore: ODevice now knows the default gfx driver to use (mteira,mickeyl) 74 * libopiecore: ODevice now knows the default gfx driver to use (mteira,mickeyl)
64 * libopiecore: Add support for the Sharp SL-C3100 "Borzoi" (mickeyl) 75 * libopiecore: Add support for the Sharp SL-C3100 "Borzoi" (mickeyl)
65 * libopiecore: Add support for the new Linux Inputsystem Switches type [necessary for auto rotation in 2.6.13] (mickeyl) 76 * libopiecore: Add support for the new Linux Inputsystem Switches type [necessary for auto rotation in 2.6.13] (mickeyl)
66 * Remove assumptions about default gfx driver ("Transformed") all over the place (mteira,mickeyl) 77 * Remove assumptions about default gfx driver ("Transformed") all over the place (mteira,mickeyl)
67 * Fix / Optimize number of scanned directories (ljp) 78 * Fix / Optimize number of scanned directories (ljp)
68 * Use five point mouse calibration to make calibrated mouse drivers work on newer Zaurii (rp,mickeyl) 79 * Use five point mouse calibration to make calibrated mouse drivers work on newer Zaurii (rp,mickeyl)
69 80
70 2005-03-25Opie 1.2.0 81 2005-03-25Opie 1.2.0
71 82
72 Fixed Bugs 83 Fixed Bugs
73 ---------- 84 ----------
74 * #1613 - AdvancedFM - scale toolbar icons appropriately (drw) 85 * #1613 - AdvancedFM - scale toolbar icons appropriately (drw)
75 * #1620 - OFileSelector - show the button on press and not on press on hold (alwin) 86 * #1620 - OFileSelector - show the button on press and not on press on hold (alwin)
76 * #1473 - Opie-Eye - Same as #1620 but we lack a common FileSystem Button class (zecke) 87 * #1473 - Opie-Eye - Same as #1620 but we lack a common FileSystem Button class (zecke)
77 * n.a. - PackageManager - fix bug where messages show up multiple times in install dialog (drw) 88 * n.a. - PackageManager - fix bug where messages show up multiple times in install dialog (drw)
78 * n.a.- make qpeglobal.h include qglobal.h (zecke) 89 * n.a.- make qpeglobal.h include qglobal.h (zecke)
79 90
80 2005-03-20Opie 1.2.0-rc1 91 2005-03-20Opie 1.2.0-rc1
81 92
82 93
83 New Features 94 New Features
84 ------------ 95 ------------
85 * Launcher: Support a static background pixmap (mickeyl) 96 * Launcher: Support a static background pixmap (mickeyl)
86 * LauncherSettings: Choose whether to have a static background pixmap (mickeyl) 97 * LauncherSettings: Choose whether to have a static background pixmap (mickeyl)
87 * PackageManager supports the 'lists_dir' ipkg configuration option (drw) 98 * PackageManager supports the 'lists_dir' ipkg configuration option (drw)
88 * Added hi-res inline images for large resolution devices (drw) 99 * Added hi-res inline images for large resolution devices (drw)
89 * Improved launcher icons for consistency (ar) 100 * Improved launcher icons for consistency (ar)
90 * Datebook: Added plugin system to datebook so holidays and birthdays from contacts may displayed in datebook (alwin) 101 * Datebook: Added plugin system to datebook so holidays and birthdays from contacts may displayed in datebook (alwin)
91 102
92 Fixed Bugs 103 Fixed Bugs
93 ---------- 104 ----------
94 * #1236 - VCards contained empty home and work address entries causing Palms to crash (eilers) 105 * #1236 - VCards contained empty home and work address entries causing Palms to crash (eilers)
95 * #1412 - Launcher Settings - fixed default settings for background in Edit tab dialog (drw) 106 * #1412 - Launcher Settings - fixed default settings for background in Edit tab dialog (drw)
96 * #1472 - Opie textedit now check for unsaved changes on ESC key (ljp) 107 * #1472 - Opie textedit now check for unsaved changes on ESC key (ljp)
97 * #1474 - Implement GUI for Scrollbars on the Left in Appearance (zecke) 108 * #1474 - Implement GUI for Scrollbars on the Left in Appearance (zecke)
98 * #1482 - Fix double '/' in paths (zecke) 109 * #1482 - Fix double '/' in paths (zecke)
99 * #1536 - Autosave of custom locations in opie backup (ar) 110 * #1536 - Autosave of custom locations in opie backup (ar)
100 * #1539 - Fixed displaying too long path in the delete dialog in opie-eye (zecke) 111 * #1539 - Fixed displaying too long path in the delete dialog in opie-eye (zecke)
101 * #1540 - Implemented deletion of DocLnks in opie-eye (zecke) 112 * #1540 - Implemented deletion of DocLnks in opie-eye (zecke)
102 * #1542 - Fixed Todo crash when priority < 1 or > 5 (drw) 113 * #1542 - Fixed Todo crash when priority < 1 or > 5 (drw)
103 * #1550 - Browse for alarm sound start in QPEDIR/sounds/ (zecke) 114 * #1550 - Browse for alarm sound start in QPEDIR/sounds/ (zecke)
104 * #1554 - Fixed Opie-Console name in .desktop file (mickeyl) 115 * #1554 - Fixed Opie-Console name in .desktop file (mickeyl)
105 * #1556 - Start to look for sound files in /opt/QtPalmtop/sounds (zecke) 116 * #1556 - Start to look for sound files in /opt/QtPalmtop/sounds (zecke)
106 * #1558 - Fixed opie-login breaking opie startup (mickeyl) 117 * #1558 - Fixed opie-login breaking opie startup (mickeyl)
107 * #1560 - Fixed Opie-Console picking up the wrong shell (bluelightning) 118 * #1560 - Fixed Opie-Console picking up the wrong shell (bluelightning)
108 * #1570 - Confirmation needed befor Restore a backup and overwrite local data (ar) 119 * #1570 - Confirmation needed befor Restore a backup and overwrite local data (ar)
109 * #1591 - Addressbook sortorder changed by clicking on column 0 (eilers) 120 * #1591 - Addressbook sortorder changed by clicking on column 0 (eilers)
110 * #1599 - Security - change recommendation for opie-multiauth to opie-securityplugin (gints) 121 * #1599 - Security - change recommendation for opie-multiauth to opie-securityplugin (gints)
111 * #1604 - Checkbook crashed on startup (drw) 122 * #1604 - Checkbook crashed on startup (drw)
112 * #1608 - Addressbook crashed after search, which may caused by not initialzed member variable (eilers) 123 * #1608 - Addressbook crashed after search, which may caused by not initialzed member variable (eilers)
113 * #1608 - QueryByExampe-Datediff on SQL database did not worked properly (eilers) 124 * #1608 - QueryByExampe-Datediff on SQL database did not worked properly (eilers)
114 * n.a. - Netsystemtime - fixed UI to prevent error dialog from displaying when it shouldn't, get rid of some compiler warnings (drw) 125 * n.a. - Netsystemtime - fixed UI to prevent error dialog from displaying when it shouldn't, get rid of some compiler warnings (drw)
115 * n.a. - PackageManager - fixed where last package in status file was not shown as installed when it should be (drw) 126 * n.a. - PackageManager - fixed where last package in status file was not shown as installed when it should be (drw)
116 * n.a. - PackageManager - fixed bug where lists_dir was not being honored at startup (drw) 127 * n.a. - PackageManager - fixed bug where lists_dir was not being honored at startup (drw)
117 * n.a. - PackageManager - provided default value for lists_dir when none is entered in configuration dialog (drw) 128 * n.a. - PackageManager - provided default value for lists_dir when none is entered in configuration dialog (drw)
118 * n.a. - OTabWidget - fixed scroll buttons, fix display position of tabs (drw) 129 * n.a. - OTabWidget - fixed scroll buttons, fix display position of tabs (drw)
119 * n.a. - AddressBook - fixed sorting by 'File As' name (drw) 130 * n.a. - AddressBook - fixed sorting by 'File As' name (drw)
120 * n.a. - AddressBook - fixed category handling for 'All' and 'Unfiled' (eilers) 131 * n.a. - AddressBook - fixed category handling for 'All' and 'Unfiled' (eilers)
121 * n.a. - AddressBook - fixed letter picker record selection and sort records afterwards (drw) 132 * n.a. - AddressBook - fixed letter picker record selection and sort records afterwards (drw)
122 133
123 Internal 134 Internal
124 -------- 135 --------
125 * Worked around bug in Qt/Embedded 2.3.10: qt_version() returns 231 (mickeyl) 136 * Worked around bug in Qt/Embedded 2.3.10: qt_version() returns 231 (mickeyl)
126 * Killed the need for weak symbols in QtE (zecke) 137 * Killed the need for weak symbols in QtE (zecke)
127 * Added optional building libqpe without inline images (mickeyl) 138 * Added optional building libqpe without inline images (mickeyl)
128 * OColorButton - fixed so does not emit a colorSelected signal inside of resizeEvent (drw) 139 * OColorButton - fixed so does not emit a colorSelected signal inside of resizeEvent (drw)
129 140
130 2005-02-03Opie 1.1.9 141 2005-02-03Opie 1.1.9
131 142
132 New Features 143 New Features
133 ------------ 144 ------------
134 * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl) 145 * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl)
135 * Number of icon columns in Launcher is customizable through LauncherSettings (mickeyl) 146 * Number of icon columns in Launcher is customizable through LauncherSettings (mickeyl)
136 * Usability enhancements in OpieIRC (skyhusker) 147 * Usability enhancements in OpieIRC (skyhusker)
137 148
138 Fixed Bugs 149 Fixed Bugs
139 ---------- 150 ----------
140 * #1501 - Fixed bug in todo sql backend (eilers) 151 * #1501 - Fixed bug in todo sql backend (eilers)
141 * #1505 - Added more Swap sizes in memoryapplet (mickeyl) 152 * #1505 - Added more Swap sizes in memoryapplet (mickeyl)
142 * #1525 - Hopefully fixed double alarms and not removing alarms set with the Clock application (zecke) 153 * #1525 - Hopefully fixed double alarms and not removing alarms set with the Clock application (zecke)
143 * #1533 - Security Owner Dialog (shown in case of unsuccessfull authentiacation) wasn't able to display information in non latin1 encoding (zecke) 154 * #1533 - Security Owner Dialog (shown in case of unsuccessfull authentiacation) wasn't able to display information in non latin1 encoding (zecke)
144 * n.a. - Removed hard coded font sizes in a couple of inputmethods (mickeyl) 155 * n.a. - Removed hard coded font sizes in a couple of inputmethods (mickeyl)
145 * n.a. - Removed MediumDlg appearing prior to FirstUsage wizard (i.e. calibration) (mickeyl) 156 * n.a. - Removed MediumDlg appearing prior to FirstUsage wizard (i.e. calibration) (mickeyl)
146 * n.a. - Fixed numerous buglets in OpieIRC (skyhusker) 157 * n.a. - Fixed numerous buglets in OpieIRC (skyhusker)
147 158
148 Internal 159 Internal
149 -------- 160 --------
150 * Added the Qtopia 1.7 SDK macros for quick-apps to easa compilation of 3rd party apps against our headers (mickeyl) 161 * Added the Qtopia 1.7 SDK macros for quick-apps to easa compilation of 3rd party apps against our headers (mickeyl)
151 * You can now use the Opie build system in combination with a OpenEmbedded staging area which makes a nice cross development environment (mickeyl) 162 * You can now use the Opie build system in combination with a OpenEmbedded staging area which makes a nice cross development environment (mickeyl)
152 * Made Opie compilable with Qt/Embedded 2.3.10 (ar) 163 * Made Opie compilable with Qt/Embedded 2.3.10 (ar)
153 * Changed Launcher to get default orientation from ODevice w/ QWS_DISPLAY overriding (mickeyl) 164 * Changed Launcher to get default orientation from ODevice w/ QWS_DISPLAY overriding (mickeyl)
154 * Build tree cleanups (mickeyl) 165 * Build tree cleanups (mickeyl)
155 166
156 2004-11-26Opie 1.1.8 167 2004-11-26Opie 1.1.8
157 168
158 New Features 169 New Features
159 ------------ 170 ------------
160 * PackageManager supports installation of local ipkg files (drw) 171 * PackageManager supports installation of local ipkg files (drw)
161 * PackageManager supports linking of applications to root (drw) 172 * PackageManager supports linking of applications to root (drw)
162 * PackageManager supports src/gz feeds (drw,wimpie) 173 * PackageManager supports src/gz feeds (drw,wimpie)
163 * Added a syslog information tab to sysinfo (mickeyl) 174 * Added a syslog information tab to sysinfo (mickeyl)
164 * Added new, more consistent, PIM icons + a GIMP teplate (ar) 175 * Added new, more consistent, PIM icons + a GIMP teplate (ar)
165 176
166 Fixed Bugs 177 Fixed Bugs
167 ---------- 178 ----------
168 * #1017 - Tetrix doesn't display correctly for high resolution screens (drw) 179 * #1017 - Tetrix doesn't display correctly for high resolution screens (drw)
169 * #1269 - VCards were imported into personal area if it was activated (eilers) 180 * #1269 - VCards were imported into personal area if it was activated (eilers)
170 * #1464 - Packagemanager dont set active filter after install a package (drw) 181 * #1464 - Packagemanager dont set active filter after install a package (drw)
171 * #1479 - Improved VCard-Parser to import VCards created by Evolution 2 and Apple Addressbook (eilers) 182 * #1479 - Improved VCard-Parser to import VCards created by Evolution 2 and Apple Addressbook (eilers)
172 * #1493 - Fixed one column layout bug of the launcher (hrw) 183 * #1493 - Fixed one column layout bug of the launcher (hrw)
173 * n.a. - PackageManager - (Minor UI tweak) in filter dialog, when option is enabled, set focus to widget that corresponds to that option (drw) 184 * n.a. - PackageManager - (Minor UI tweak) in filter dialog, when option is enabled, set focus to widget that corresponds to that option (drw)
174 * n.a. - PackageManager - (Minor UI tweak) fix double entry in source feed configuration when adding a new feed (drw) 185 * n.a. - PackageManager - (Minor UI tweak) fix double entry in source feed configuration when adding a new feed (drw)
175 * n.a. - Battery Applet - fix sizing of battery info popup (drw,mickeyl) 186 * n.a. - Battery Applet - fix sizing of battery info popup (drw,mickeyl)
176 187
177 Internal 188 Internal
178 -------- 189 --------
179 * Moved libopie1 to unsupported (mickeyl) 190 * Moved libopie1 to unsupported (mickeyl)
180 * Implemented generic queryByExample() with incremental searching. A lot of internal changes of the Pim2-library (eilers) 191 * Implemented generic queryByExample() with incremental searching. A lot of internal changes of the Pim2-library (eilers)
181 * Added fast and full featured and incremental sorted() for SQL addressbook backend (eilers) 192 * Added fast and full featured and incremental sorted() for SQL addressbook backend (eilers)
182 193
183 2004-11-14Opie 1.1.7 194 2004-11-14Opie 1.1.7
184 195
185 New Features 196 New Features
186 ------------ 197 ------------
187 * libOpieDB now uses SQLite V3 instead V2. Remember to upgrade your database files! (eilers) 198 * libOpieDB now uses SQLite V3 instead V2. Remember to upgrade your database files! (eilers)
188 * Backup now uses the busy indicator when backing up and restore (ar) 199 * Backup now uses the busy indicator when backing up and restore (ar)
189 * OpiePlayer2 gained adding of Directories to the playlist (zecke) 200 * OpiePlayer2 gained adding of Directories to the playlist (zecke)
190 * OpiePlayer2 better error handling (zecke) 201 * OpiePlayer2 better error handling (zecke)
191 * OpiePlayer2 progress indication while streaming (zecke) 202 * OpiePlayer2 progress indication while streaming (zecke)
192 * OpiePlayer2 ported to use libxine 1.0.0-rc6a (brad,zecke) 203 * OpiePlayer2 ported to use libxine 1.0.0-rc6a (brad,zecke)
diff --git a/library/datebookmonth.cpp b/library/datebookmonth.cpp
index 2616b7b..ffdf335 100644
--- a/library/datebookmonth.cpp
+++ b/library/datebookmonth.cpp
@@ -472,305 +472,312 @@ void DateBookMonth::slotWeekChange( bool startOnMonday )
472} 472}
473 473
474void DateBookMonth::keyPressEvent( QKeyEvent *e ) 474void DateBookMonth::keyPressEvent( QKeyEvent *e )
475{ 475{
476 switch(e->key()) { 476 switch(e->key()) {
477 case Key_Up: 477 case Key_Up:
478 setDate(QDate(year, month, day).addDays(-7)); 478 setDate(QDate(year, month, day).addDays(-7));
479 break; 479 break;
480 case Key_Down: 480 case Key_Down:
481 setDate(QDate(year, month, day).addDays(7)); 481 setDate(QDate(year, month, day).addDays(7));
482 break; 482 break;
483 case Key_Left: 483 case Key_Left:
484 setDate(QDate(year, month, day).addDays(-1)); 484 setDate(QDate(year, month, day).addDays(-1));
485 break; 485 break;
486 case Key_Right: 486 case Key_Right:
487 setDate(QDate(year, month, day).addDays(1)); 487 setDate(QDate(year, month, day).addDays(1));
488 break; 488 break;
489 case Key_Space: 489 case Key_Space:
490 qWarning("space"); 490 qWarning("space");
491 emit dateClicked(year, month, day); 491 emit dateClicked(year, month, day);
492 if ( autoClose && parentWidget() ) 492 if ( autoClose && parentWidget() )
493 parentWidget()->close(); 493 parentWidget()->close();
494 break; 494 break;
495 default: 495 default:
496 qWarning("ignore"); 496 qWarning("ignore");
497 e->ignore(); 497 e->ignore();
498 break; 498 break;
499 } 499 }
500} 500}
501 501
502//--------------------------------------------------------------------------- 502//---------------------------------------------------------------------------
503class DayItemMonthPrivate 503class DayItemMonthPrivate
504{ 504{
505public: 505public:
506 DayItemMonthPrivate() {}; 506 DayItemMonthPrivate() {};
507 ~DayItemMonthPrivate() { mDayEvents.clear(); }; 507 ~DayItemMonthPrivate() { mDayEvents.clear(); };
508 QValueList<EffectiveEvent> mDayEvents; 508 QValueList<EffectiveEvent> mDayEvents;
509}; 509};
510 510
511DayItemMonth::DayItemMonth( QTable *table, EditType et, const QString &t ) 511DayItemMonth::DayItemMonth( QTable *table, EditType et, const QString &t )
512 : QTableItem( table, et, t ) 512 : QTableItem( table, et, t )
513{ 513{
514 d = new DayItemMonthPrivate(); 514 d = new DayItemMonthPrivate();
515} 515}
516 516
517DayItemMonth::~DayItemMonth() 517DayItemMonth::~DayItemMonth()
518{ 518{
519 daysEvents.clear(); 519 daysEvents.clear();
520 delete d; 520 delete d;
521} 521}
522 522
523void DayItemMonth::setEvents( const QValueList<EffectiveEvent> &effEv ) 523void DayItemMonth::setEvents( const QValueList<EffectiveEvent> &effEv )
524{ 524{
525 d->mDayEvents = effEv; 525 d->mDayEvents = effEv;
526} 526}
527 527
528void DayItemMonth::clearEffEvents() 528void DayItemMonth::clearEffEvents()
529{ 529{
530 d->mDayEvents.clear(); 530 d->mDayEvents.clear();
531} 531}
532 532
533void DayItemMonth::paint( QPainter *p, const QColorGroup &cg, 533void DayItemMonth::paint( QPainter *p, const QColorGroup &cg,
534 const QRect &cr, bool selected ) 534 const QRect &cr, bool selected )
535{ 535{
536 p->save(); 536 p->save();
537 537
538 QColorGroup g( cg ); 538 QColorGroup g( cg );
539 g.setBrush( QColorGroup::Base, back ); 539 g.setBrush( QColorGroup::Base, back );
540 g.setColor( QColorGroup::Text, forg ); 540 g.setColor( QColorGroup::Text, forg );
541 if ( selected ) 541 if ( selected )
542 p->setPen( g.highlightedText() ); 542 p->setPen( g.highlightedText() );
543 else 543 else
544 p->setPen( g.text() ); 544 p->setPen( g.text() );
545 545
546 QValueStack<int> normalLine; 546 QValueStack<int> normalLine;
547 QValueStack<int> repeatLine; 547 QValueStack<int> repeatLine;
548 QValueStack<int> travelLine; 548 QValueStack<int> travelLine;
549 549
550 bool normalAllDay = FALSE; 550 bool normalAllDay = FALSE;
551 bool repeatAllDay = FALSE; 551 bool repeatAllDay = FALSE;
552 bool travelAllDay = FALSE; 552 bool travelAllDay = FALSE;
553 bool holidayAllDay = FALSE; 553 bool holidayAllDay = FALSE;
554 554
555 QValueListIterator<EffectiveEvent> itDays = d->mDayEvents.begin(); 555 QValueListIterator<EffectiveEvent> itDays = d->mDayEvents.begin();
556 556
557 for ( ; itDays != d->mDayEvents.end(); ++itDays ) { 557 for ( ; itDays != d->mDayEvents.end(); ++itDays ) {
558 int w = cr.width(); 558 int w = cr.width();
559 Event ev = (*itDays).event(); 559 Event ev = (*itDays).event();
560 560
561 int f = (*itDays).start().hour(); // assume Effective event 561 int f = (*itDays).start().hour(); // assume Effective event
562 int t = (*itDays).end().hour(); // is truncated. 562 int t = (*itDays).end().hour(); // is truncated.
563 563
564 if (ev.isAllDay()) { 564 if (ev.isAllDay()) {
565 if (!ev.hasRepeat()) { 565 if (!ev.hasRepeat()) {
566 normalAllDay = TRUE; 566 normalAllDay = TRUE;
567 if (!ev.isValidUid()) { 567 if (!ev.isValidUid()) {
568 holidayAllDay = TRUE; 568 holidayAllDay = TRUE;
569 } 569 }
570 } else { 570 } else {
571 repeatAllDay = TRUE; 571 repeatAllDay = TRUE;
572 } 572 }
573 } else { 573 } else {
574 int sLine, eLine; 574 int sLine, eLine;
575 if (f == 0) 575 if (f == 0)
576 sLine = 0; 576 sLine = 0;
577 else if (f < 8 ) 577 else if (f < 8 )
578 sLine = 1; 578 sLine = 1;
579 else if (f >= 17) 579 else if (f >= 17)
580 sLine = w - 4; 580 sLine = w - 4;
581 else { 581 else {
582 sLine = (f - 8) * (w - 8); 582 sLine = (f - 8) * (w - 8);
583 if (sLine) 583 if (sLine)
584 sLine /= 8; 584 sLine /= 8;
585 sLine += 4; 585 sLine += 4;
586 } 586 }
587 if (t == 23) 587 if (t == 23)
588 eLine = w; 588 eLine = w;
589 else if (t < 8) 589 else if (t < 8)
590 eLine = 4; 590 eLine = 4;
591 else if (t >= 17) 591 else if (t >= 17)
592 eLine = w - 1; 592 eLine = w - 1;
593 else { 593 else {
594 eLine = (t - 8) * (w - 8); 594 eLine = (t - 8) * (w - 8);
595 if (eLine) 595 if (eLine)
596 eLine /= 8; 596 eLine /= 8;
597 eLine += 4; 597 eLine += 4;
598 } 598 }
599 if (!ev.hasRepeat()) { 599 if (!ev.hasRepeat()) {
600 normalLine.push(sLine); 600 normalLine.push(sLine);
601 normalLine.push(eLine); 601 normalLine.push(eLine);
602 } else { 602 } else {
603 repeatLine.push(sLine); 603 repeatLine.push(sLine);
604 repeatLine.push(eLine); 604 repeatLine.push(eLine);
605 } 605 }
606 } 606 }
607 } 607 }
608 608
609 // draw the background 609 // draw the background
610 if (normalAllDay || repeatAllDay || travelAllDay || holidayAllDay) { 610 if (normalAllDay || repeatAllDay || travelAllDay || holidayAllDay) {
611 p->save(); 611 p->save();
612 612
613 if (normalAllDay) 613 if (normalAllDay)
614 if (repeatAllDay) { 614 if (repeatAllDay) {
615 p->fillRect( 0, 0, cr.width(), cr.height() / 2, 615 p->fillRect( 0, 0, cr.width(), cr.height() / 2,
616 s_colorNormalLight ); 616 s_colorNormalLight );
617 p->fillRect( 0, cr.height() / 2, cr.width(), cr.height() / 2, 617 p->fillRect( 0, cr.height() / 2, cr.width(), cr.height() / 2,
618 colorRepeatLight ); 618 colorRepeatLight );
619 } else { 619 } else {
620 if (!holidayAllDay) { 620 if (!holidayAllDay) {
621 p->fillRect( 0, 0, cr.width(), cr.height(), 621 p->fillRect( 0, 0, cr.width(), cr.height(),
622 s_colorNormalLight ); 622 s_colorNormalLight );
623 } else { 623 } else {
624 p->fillRect( 0, 0, cr.width(), cr.height(), 624 p->fillRect( 0, 0, cr.width(), cr.height(),
625 s_colorHolidayLight ); 625 s_colorHolidayLight );
626 } 626 }
627 } else if (repeatAllDay) { 627 } else if (repeatAllDay) {
628 p->fillRect( 0, 0, cr.width(), cr.height(), 628 p->fillRect( 0, 0, cr.width(), cr.height(),
629 s_colorRepeatLight ); 629 s_colorRepeatLight );
630 } 630 }
631 } else { 631 } else {
632 p->fillRect( 0, 0, cr.width(), 632 p->fillRect( 0, 0, cr.width(),
633 cr.height(), selected 633 cr.height(), selected
634 ? g.brush( QColorGroup::Highlight ) 634 ? g.brush( QColorGroup::Highlight )
635 : g.brush( QColorGroup::Base ) ); 635 : g.brush( QColorGroup::Base ) );
636 } 636 }
637 637
638 // The lines 638 // The lines
639 // now for the lines. 639 // now for the lines.
640 int h = 5; 640 int h = 5;
641 int y = cr.height() / 2 - h; 641 int y = cr.height() / 2 - h;
642 642
643 while(normalLine.count() >= 2) { 643 while(normalLine.count() >= 2) {
644 int x2 = normalLine.pop(); 644 int x2 = normalLine.pop();
645 int x1 = normalLine.pop(); 645 int x1 = normalLine.pop();
646 if (x2 < x1 + 2) 646 if (x2 < x1 + 2)
647 x2 = x1 + 2; 647 x2 = x1 + 2;
648 p->fillRect(x1, y, x2 - x1, h, colorNormal); 648 p->fillRect(x1, y, x2 - x1, h, colorNormal);
649 } 649 }
650 650
651 y += h; 651 y += h;
652 652
653 while(repeatLine.count() >= 2) { 653 while(repeatLine.count() >= 2) {
654 int x2 = repeatLine.pop(); 654 int x2 = repeatLine.pop();
655 int x1 = repeatLine.pop(); 655 int x1 = repeatLine.pop();
656 if (x2 < x1 + 2) 656 if (x2 < x1 + 2)
657 x2 = x1 + 2; 657 x2 = x1 + 2;
658 p->fillRect(x1, y, x2 - x1, h, colorRepeat); 658 p->fillRect(x1, y, x2 - x1, h, colorRepeat);
659 } 659 }
660 660
661 661
662 // Finally, draw the number. 662 // Finally, draw the number.
663 QFont f = p->font(); 663 QFont f = p->font();
664 f.setPointSize( ( f.pointSize() / 3 ) * 2 ); 664 if(qApp->desktop()->width() >= 480)
665 {
666 f.setPointSize( f.pointSize() - 2 );
667 }
668 else
669 {
670 f.setPointSize( ( f.pointSize() / 3 ) * 2 );
671 }
665 p->setFont( f ); 672 p->setFont( f );
666 QFontMetrics fm( f ); 673 QFontMetrics fm( f );
667 p->drawText( 1, 1 + fm.ascent(), QString::number( day() ) ); 674 p->drawText( 1, 1 + fm.ascent(), QString::number( day() ) );
668 675
669 p->restore(); 676 p->restore();
670} 677}
671 678
672 679
673 680
674void DayItemMonth::setType( Calendar::Day::Type t ) 681void DayItemMonth::setType( Calendar::Day::Type t )
675{ 682{
676 switch ( t ) { 683 switch ( t ) {
677 case Calendar::Day::PrevMonth: 684 case Calendar::Day::PrevMonth:
678 case Calendar::Day::NextMonth: 685 case Calendar::Day::NextMonth:
679 back = QBrush( QColor( 224, 224, 224 ) ); 686 back = QBrush( QColor( 224, 224, 224 ) );
680 forg = black; 687 forg = black;
681 break; 688 break;
682 case Calendar::Day::ThisMonth: 689 case Calendar::Day::ThisMonth:
683 back = QBrush( white ); 690 back = QBrush( white );
684 forg = black; 691 forg = black;
685 break; 692 break;
686 } 693 }
687 typ = t; 694 typ = t;
688} 695}
689 696
690 697
691 698
692DateButton::DateButton( bool longDate, QWidget *parent, const char * name ) 699DateButton::DateButton( bool longDate, QWidget *parent, const char * name )
693 :QPushButton( parent, name ) 700 :QPushButton( parent, name )
694{ 701{
695 longFormat = longDate; 702 longFormat = longDate;
696 df = DateFormat('/', DateFormat::MonthDayYear, DateFormat::MonthDayYear); 703 df = DateFormat('/', DateFormat::MonthDayYear, DateFormat::MonthDayYear);
697 setDate( QDate::currentDate() ); 704 setDate( QDate::currentDate() );
698 705
699 connect(this,SIGNAL(pressed()),this,SLOT(pickDate())); 706 connect(this,SIGNAL(pressed()),this,SLOT(pickDate()));
700 707
701 708
702} 709}
703 710
704 711
705void DateButton::pickDate() 712void DateButton::pickDate()
706{ 713{
707 static QPopupMenu *m1 = 0; 714 static QPopupMenu *m1 = 0;
708 static DateBookMonth *picker = 0; 715 static DateBookMonth *picker = 0;
709 if ( !m1 ) { 716 if ( !m1 ) {
710 m1 = new QPopupMenu( this ); 717 m1 = new QPopupMenu( this );
711 picker = new DateBookMonth( m1, 0, TRUE ); 718 picker = new DateBookMonth( m1, 0, TRUE );
712 m1->insertItem( picker ); 719 m1->insertItem( picker );
713 connect( picker, SIGNAL( dateClicked(int,int,int) ), 720 connect( picker, SIGNAL( dateClicked(int,int,int) ),
714 this, SLOT( setDate(int,int,int) ) ); 721 this, SLOT( setDate(int,int,int) ) );
715 connect( picker, SIGNAL( dateClicked(int,int,int) ), 722 connect( picker, SIGNAL( dateClicked(int,int,int) ),
716 this, SIGNAL( dateSelected(int,int,int) ) ); 723 this, SIGNAL( dateSelected(int,int,int) ) );
717 connect( m1, SIGNAL( aboutToHide() ), 724 connect( m1, SIGNAL( aboutToHide() ),
718 this, SLOT( gotHide() ) ); 725 this, SLOT( gotHide() ) );
719 } 726 }
720 picker->slotWeekChange( weekStartsMonday ); 727 picker->slotWeekChange( weekStartsMonday );
721 picker->setDate( currDate.year(), currDate.month(), currDate.day() ); 728 picker->setDate( currDate.year(), currDate.month(), currDate.day() );
722 m1->popup(mapToGlobal(QPoint(0,height()))); 729 m1->popup(mapToGlobal(QPoint(0,height())));
723 picker->setFocus(); 730 picker->setFocus();
724} 731}
725 732
726 733
727void DateButton::gotHide() 734void DateButton::gotHide()
728{ 735{
729 // we have to redo the button... 736 // we have to redo the button...
730 setDown( false ); 737 setDown( false );
731} 738}
732 739
733 740
734// void dateSelected( int year, int month, int day ); 741// void dateSelected( int year, int month, int day );
735 742
736void DateButton::setWeekStartsMonday( int b ) 743void DateButton::setWeekStartsMonday( int b )
737{ 744{
738 weekStartsMonday = b; 745 weekStartsMonday = b;
739} 746}
740 747
741void DateButton::setDate( int y, int m, int d ) 748void DateButton::setDate( int y, int m, int d )
742{ 749{
743 setDate( QDate( y,m,d) ); 750 setDate( QDate( y,m,d) );
744} 751}
745 752
746void DateButton::setDate( QDate d ) 753void DateButton::setDate( QDate d )
747{ 754{
748 currDate = d; 755 currDate = d;
749 setText( longFormat ? TimeString::longDateString( d, df ) : 756 setText( longFormat ? TimeString::longDateString( d, df ) :
750 TimeString::shortDate( d, df ) ); 757 TimeString::shortDate( d, df ) );
751 758
752} 759}
753 760
754void DateButton::setDateFormat( DateFormat f ) 761void DateButton::setDateFormat( DateFormat f )
755{ 762{
756 df = f; 763 df = f;
757 setDate( currDate ); 764 setDate( currDate );
758} 765}
759 766
760bool DateButton::customWhatsThis() const 767bool DateButton::customWhatsThis() const
761{ 768{
762 return TRUE; 769 return TRUE;
763} 770}
764 771
765 772
766// this class is only here for Sharp ROM compatibility 773// this class is only here for Sharp ROM compatibility
767// I have reverse engineered this class and it seems to 774// I have reverse engineered this class and it seems to
768// work (only qtmail seems to use it) - sandman 775// work (only qtmail seems to use it) - sandman
769// DO NOT USE IT IN NEW CODE !! 776// DO NOT USE IT IN NEW CODE !!
770 777
771DateBookMonthPopup::DateBookMonthPopup ( QWidget *w ) 778DateBookMonthPopup::DateBookMonthPopup ( QWidget *w )
772 : QPopupMenu ( w ) 779 : QPopupMenu ( w )
773{ 780{
774 m_dbm = new DateBookMonth( this, 0, TRUE ); 781 m_dbm = new DateBookMonth( this, 0, TRUE );
775 insertItem( m_dbm ); 782 insertItem( m_dbm );
776} 783}