summaryrefslogtreecommitdiff
authorhrw <hrw>2005-10-17 13:28:09 (UTC)
committer hrw <hrw>2005-10-17 13:28:09 (UTC)
commit9f41cd10ef92daa889f86cb43793dc75de18e786 (patch) (unidiff)
treee4df791fa7922f6857d645d81481de98e5bfeaeb
parent965a373e7685c8ae2cfc9955efe20424aa95e10c (diff)
downloadopie-9f41cd10ef92daa889f86cb43793dc75de18e786.zip
opie-9f41cd10ef92daa889f86cb43793dc75de18e786.tar.gz
opie-9f41cd10ef92daa889f86cb43793dc75de18e786.tar.bz2
Appearance: Added configuration options to set smallIconSize, bigIconSize, useBigPixmaps
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--ChangeLog2
-rw-r--r--noncore/settings/appearance2/appearance.cpp37
-rw-r--r--noncore/settings/appearance2/appearance.h5
3 files changed, 43 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 85a26bd..2922afd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,262 +1,262 @@
1 2005-??-??Opie 1.2.2 1 2005-??-??Opie 1.2.2
2 2
3 3
4 New Features 4 New Features
5 ------------ 5 ------------
6 6 * Appearance: Added configuration options to set smallIconSize, bigIconSize, useBigPixmaps (hrw)
7 7
8 Fixed Bugs 8 Fixed Bugs
9 ---------- 9 ----------
10 * #1695 - Date selector use too small fontsize on VGA screen (hrw) 10 * #1695 - Date selector use too small fontsize on VGA screen (hrw)
11 * #1686 - opie-console lack UI setting for switching scrollbar (hrw) 11 * #1686 - opie-console lack UI setting for switching scrollbar (hrw)
12 * #1624 - Button settngs changes are applied only after restart (hrw) 12 * #1624 - Button settngs changes are applied only after restart (hrw)
13 * #1492 - Backup and Restore does not show list of backups to restore on start (hrw) 13 * #1492 - Backup and Restore does not show list of backups to restore on start (hrw)
14 * n.a. - remove hardcoded font size from wellenreiter (hrw) 14 * n.a. - remove hardcoded font size from wellenreiter (hrw)
15 * n.a. - added patch to build QT/E 2.3.10 with gc 4.x.x (hrw) 15 * n.a. - added patch to build QT/E 2.3.10 with gc 4.x.x (hrw)
16 16
17 2005-09-11Opie 1.2.1 17 2005-09-11Opie 1.2.1
18 18
19 19
20 New Features 20 New Features
21 ------------ 21 ------------
22 * OpieStumbler: Scans WiFi networks using the wireless extension scanning (skyhusker) 22 * OpieStumbler: Scans WiFi networks using the wireless extension scanning (skyhusker)
23 * Opie-Reader: Support for document formats ArriereGo and Reb, add flite output (tim,pohly) 23 * Opie-Reader: Support for document formats ArriereGo and Reb, add flite output (tim,pohly)
24 * Opie-Networksettings: Add support for wlan-ng devices and improve WEP handling (Dirk Opfer) 24 * Opie-Networksettings: Add support for wlan-ng devices and improve WEP handling (Dirk Opfer)
25 * Wellenreiter: Remove Joining networks - use OpieStumbler for that (mickeyl) 25 * Wellenreiter: Remove Joining networks - use OpieStumbler for that (mickeyl)
26 * Opie-Mobilemsg has gone unsupported - it never really worked and there will be a replacement (mickeyl) 26 * Opie-Mobilemsg has gone unsupported - it never really worked and there will be a replacement (mickeyl)
27 * Opie-Tabmanager has gone unsupported - it barely works and there is not much of a use of it anyway (mickeyl) 27 * Opie-Tabmanager has gone unsupported - it barely works and there is not much of a use of it anyway (mickeyl)
28 * Checkbook: Added configuration option to use smaller font for checkbook transaction tab (hrw) 28 * Checkbook: Added configuration option to use smaller font for checkbook transaction tab (hrw)
29 * ZSafe: Made UI conform to Opie standards (drw) 29 * ZSafe: Made UI conform to Opie standards (drw)
30 * Today Addressbook plugin: Fixed configuration to show/not show birthdays, use checkboxes for selection (hrw) 30 * Today Addressbook plugin: Fixed configuration to show/not show birthdays, use checkboxes for selection (hrw)
31 * Opie-Console: Read initial fixed font configuration from qpe.conf (mickeyl) 31 * Opie-Console: Read initial fixed font configuration from qpe.conf (mickeyl)
32 * Opie-PcmciaApplet: Configure insert/resume actions and bind unsupported cards (mickeyl) 32 * Opie-PcmciaApplet: Configure insert/resume actions and bind unsupported cards (mickeyl)
33 * SysInfo: Remove CPU tab and add Devices tab instead (mickeyl) 33 * SysInfo: Remove CPU tab and add Devices tab instead (mickeyl)
34 * Opie-smb: Added Opie front end for Samba (ljp) 34 * Opie-smb: Added Opie front end for Samba (ljp)
35 * Opie-Bluetooth: Replace obex send implementation and patch libopieobex and the bluetoothapplet (Michael Haynie) 35 * Opie-Bluetooth: Replace obex send implementation and patch libopieobex and the bluetoothapplet (Michael Haynie)
36 * Opieplayer: rudimentary podcast support (ljp) 36 * Opieplayer: rudimentary podcast support (ljp)
37 37
38 Fixed Bugs 38 Fixed Bugs
39 ---------- 39 ----------
40 * #1377 - Suspend Powermanagement when switched to another VT (mickeyl) 40 * #1377 - Suspend Powermanagement when switched to another VT (mickeyl)
41 - We actually suspend the complete Opie now in that case. 41 - We actually suspend the complete Opie now in that case.
42 * #1384 - Battery status updated improperly when charging (skyhusker) 42 * #1384 - Battery status updated improperly when charging (skyhusker)
43 * #1476 - Wrong order of application entries in the O-menu (skyhusker) 43 * #1476 - Wrong order of application entries in the O-menu (skyhusker)
44 * #1514 - Remove usage of cardmon/pcmcia picture in applications. pcmcia is now an inline picture (mickeyl) 44 * #1514 - Remove usage of cardmon/pcmcia picture in applications. pcmcia is now an inline picture (mickeyl)
45 * #1535- Missing line break and unnecessary location shown with Today-Calendar plugin (deller) 45 * #1535- Missing line break and unnecessary location shown with Today-Calendar plugin (deller)
46 * #1543 - Time Settings: "predict" tab is displayed twice after reopen (hrw) 46 * #1543 - Time Settings: "predict" tab is displayed twice after reopen (hrw)
47 * #1546 - Battery applet popup is not always large enough to show jacket remaining info (skyhusker) 47 * #1546 - Battery applet popup is not always large enough to show jacket remaining info (skyhusker)
48 * #1557 - Light&Power-Settings don't store warning intervall and warning levels (skyhusker) 48 * #1557 - Light&Power-Settings don't store warning intervall and warning levels (skyhusker)
49 * #1565 - crash-fix in odevice.cpp while scanning the distribution table (deller) 49 * #1565 - crash-fix in odevice.cpp while scanning the distribution table (deller)
50 * #1614 - Make Opie-console start in $HOME instead of / (skyhusker) 50 * #1614 - Make Opie-console start in $HOME instead of / (skyhusker)
51 * #1635 - opie-today, datebook-plugin does not show notes (skyhusker) 51 * #1635 - opie-today, datebook-plugin does not show notes (skyhusker)
52 * #1665 - Opie-IRC displays the host prepended to the message when peer is using and ipv6 address (skyhusker) 52 * #1665 - Opie-IRC displays the host prepended to the message when peer is using and ipv6 address (skyhusker)
53 * #1666 - Opie-IRC does not allow to add !channels in config asautojoin ones (skyhusker) 53 * #1666 - Opie-IRC does not allow to add !channels in config asautojoin ones (skyhusker)
54 * #1667 - Opie-IRC does not show messages from !channel (skyhusker) 54 * #1667 - Opie-IRC does not show messages from !channel (skyhusker)
55 * #1679 - Security PIN plugin is QVGA sized (hrw) 55 * #1679 - Security PIN plugin is QVGA sized (hrw)
56 * #1682 - Properly resize tab control in OTabWidget (drw) 56 * #1682 - Properly resize tab control in OTabWidget (drw)
57 * n.a. - always show volume and wireless applet popups inside visible screen (deller) 57 * n.a. - always show volume and wireless applet popups inside visible screen (deller)
58 * n.a. - scale O-Menu-Applets appropriately (mickeyl) 58 * n.a. - scale O-Menu-Applets appropriately (mickeyl)
59 * n.a. - libopienet: fix bugs in wireless scanning and setting SSID (skyhusker) 59 * n.a. - libopienet: fix bugs in wireless scanning and setting SSID (skyhusker)
60 * n.a. - Wellenreiter: relax WE version matching test a bit (mickeyl) 60 * n.a. - Wellenreiter: relax WE version matching test a bit (mickeyl)
61 * n.a. - scale BluezApplet appropriately and use larger icons (mickeyl) 61 * n.a. - scale BluezApplet appropriately and use larger icons (mickeyl)
62 * n.a. - memoryapplet: fix crash in memoryapplet on kernels without swap support (seneca cunningham) 62 * n.a. - memoryapplet: fix crash in memoryapplet on kernels without swap support (seneca cunningham)
63 * n.a. - networksettings: ignore hostap control interfaces wifi* (mickeyl) 63 * n.a. - networksettings: ignore hostap control interfaces wifi* (mickeyl)
64 * n.a. - Today Addressbook plugin fix configuration to show/not show birthdays, use checkboxes for selection (hrw) 64 * n.a. - Today Addressbook plugin fix configuration to show/not show birthdays, use checkboxes for selection (hrw)
65 * n.a. - remove hardcoded font size from netsystemtime (hrw) 65 * n.a. - remove hardcoded font size from netsystemtime (hrw)
66 * n.a. - remove hardcoded font size from checkbook graphs (hrw) 66 * n.a. - remove hardcoded font size from checkbook graphs (hrw)
67 * n.a. - Dagger - fixes for Sword 1.5.8, morph tag x-refs, closing last tab crash (drw) 67 * n.a. - Dagger - fixes for Sword 1.5.8, morph tag x-refs, closing last tab crash (drw)
68 68
69 69
70 Internal 70 Internal
71 -------- 71 --------
72 * Make BluezApplet use OTaskbarApplet (mickeyl) 72 * Make BluezApplet use OTaskbarApplet (mickeyl)
73 * libopiecore: rewrite OFileNotification to use the Linux 2.6 inotify interface (mickeyl) 73 * libopiecore: rewrite OFileNotification to use the Linux 2.6 inotify interface (mickeyl)
74 * libopiecore: add ODirNotification - recursive directory notifications (mickeyl) 74 * libopiecore: add ODirNotification - recursive directory notifications (mickeyl)
75 * libopienet: Skip hostap control interfaces 'wifi' and improve robustness in ONetworkInterface (mickeyl) 75 * libopienet: Skip hostap control interfaces 'wifi' and improve robustness in ONetworkInterface (mickeyl)
76 * libopieui: Remove OVersatileView and OVersatileViewItem (mickeyl) 76 * libopieui: Remove OVersatileView and OVersatileViewItem (mickeyl)
77 * libopienet: Miscellaneous API cleanups (mickeyl) 77 * libopienet: Miscellaneous API cleanups (mickeyl)
78 * libopiecore: Add linux pcmcia system abstraction classes (mickeyl) 78 * libopiecore: Add linux pcmcia system abstraction classes (mickeyl)
79 * libopiecore: ODevice now knows the default gfx driver to use (mteira,mickeyl) 79 * libopiecore: ODevice now knows the default gfx driver to use (mteira,mickeyl)
80 * libopiecore: Add support for the Sharp SL-C3100 "Borzoi" (mickeyl) 80 * libopiecore: Add support for the Sharp SL-C3100 "Borzoi" (mickeyl)
81 * libopiecore: Add support for the new Linux Inputsystem Switches type [necessary for auto rotation in 2.6.13] (mickeyl) 81 * libopiecore: Add support for the new Linux Inputsystem Switches type [necessary for auto rotation in 2.6.13] (mickeyl)
82 * Remove assumptions about default gfx driver ("Transformed") all over the place (mteira,mickeyl) 82 * Remove assumptions about default gfx driver ("Transformed") all over the place (mteira,mickeyl)
83 * Fix / Optimize number of scanned directories (ljp) 83 * Fix / Optimize number of scanned directories (ljp)
84 * Use five point mouse calibration to make calibrated mouse drivers work on newer Zaurii (rp,mickeyl) 84 * Use five point mouse calibration to make calibrated mouse drivers work on newer Zaurii (rp,mickeyl)
85 85
86 2005-03-25Opie 1.2.0 86 2005-03-25Opie 1.2.0
87 87
88 Fixed Bugs 88 Fixed Bugs
89 ---------- 89 ----------
90 * #1613 - AdvancedFM - scale toolbar icons appropriately (drw) 90 * #1613 - AdvancedFM - scale toolbar icons appropriately (drw)
91 * #1620 - OFileSelector - show the button on press and not on press on hold (alwin) 91 * #1620 - OFileSelector - show the button on press and not on press on hold (alwin)
92 * #1473 - Opie-Eye - Same as #1620 but we lack a common FileSystem Button class (zecke) 92 * #1473 - Opie-Eye - Same as #1620 but we lack a common FileSystem Button class (zecke)
93 * n.a. - PackageManager - fix bug where messages show up multiple times in install dialog (drw) 93 * n.a. - PackageManager - fix bug where messages show up multiple times in install dialog (drw)
94 * n.a.- make qpeglobal.h include qglobal.h (zecke) 94 * n.a.- make qpeglobal.h include qglobal.h (zecke)
95 95
96 2005-03-20Opie 1.2.0-rc1 96 2005-03-20Opie 1.2.0-rc1
97 97
98 98
99 New Features 99 New Features
100 ------------ 100 ------------
101 * Launcher: Support a static background pixmap (mickeyl) 101 * Launcher: Support a static background pixmap (mickeyl)
102 * LauncherSettings: Choose whether to have a static background pixmap (mickeyl) 102 * LauncherSettings: Choose whether to have a static background pixmap (mickeyl)
103 * PackageManager supports the 'lists_dir' ipkg configuration option (drw) 103 * PackageManager supports the 'lists_dir' ipkg configuration option (drw)
104 * Added hi-res inline images for large resolution devices (drw) 104 * Added hi-res inline images for large resolution devices (drw)
105 * Improved launcher icons for consistency (ar) 105 * Improved launcher icons for consistency (ar)
106 * Datebook: Added plugin system to datebook so holidays and birthdays from contacts may displayed in datebook (alwin) 106 * Datebook: Added plugin system to datebook so holidays and birthdays from contacts may displayed in datebook (alwin)
107 107
108 Fixed Bugs 108 Fixed Bugs
109 ---------- 109 ----------
110 * #1236 - VCards contained empty home and work address entries causing Palms to crash (eilers) 110 * #1236 - VCards contained empty home and work address entries causing Palms to crash (eilers)
111 * #1412 - Launcher Settings - fixed default settings for background in Edit tab dialog (drw) 111 * #1412 - Launcher Settings - fixed default settings for background in Edit tab dialog (drw)
112 * #1472 - Opie textedit now check for unsaved changes on ESC key (ljp) 112 * #1472 - Opie textedit now check for unsaved changes on ESC key (ljp)
113 * #1474 - Implement GUI for Scrollbars on the Left in Appearance (zecke) 113 * #1474 - Implement GUI for Scrollbars on the Left in Appearance (zecke)
114 * #1482 - Fix double '/' in paths (zecke) 114 * #1482 - Fix double '/' in paths (zecke)
115 * #1536 - Autosave of custom locations in opie backup (ar) 115 * #1536 - Autosave of custom locations in opie backup (ar)
116 * #1539 - Fixed displaying too long path in the delete dialog in opie-eye (zecke) 116 * #1539 - Fixed displaying too long path in the delete dialog in opie-eye (zecke)
117 * #1540 - Implemented deletion of DocLnks in opie-eye (zecke) 117 * #1540 - Implemented deletion of DocLnks in opie-eye (zecke)
118 * #1542 - Fixed Todo crash when priority < 1 or > 5 (drw) 118 * #1542 - Fixed Todo crash when priority < 1 or > 5 (drw)
119 * #1550 - Browse for alarm sound start in QPEDIR/sounds/ (zecke) 119 * #1550 - Browse for alarm sound start in QPEDIR/sounds/ (zecke)
120 * #1554 - Fixed Opie-Console name in .desktop file (mickeyl) 120 * #1554 - Fixed Opie-Console name in .desktop file (mickeyl)
121 * #1556 - Start to look for sound files in /opt/QtPalmtop/sounds (zecke) 121 * #1556 - Start to look for sound files in /opt/QtPalmtop/sounds (zecke)
122 * #1558 - Fixed opie-login breaking opie startup (mickeyl) 122 * #1558 - Fixed opie-login breaking opie startup (mickeyl)
123 * #1560 - Fixed Opie-Console picking up the wrong shell (bluelightning) 123 * #1560 - Fixed Opie-Console picking up the wrong shell (bluelightning)
124 * #1570 - Confirmation needed befor Restore a backup and overwrite local data (ar) 124 * #1570 - Confirmation needed befor Restore a backup and overwrite local data (ar)
125 * #1591 - Addressbook sortorder changed by clicking on column 0 (eilers) 125 * #1591 - Addressbook sortorder changed by clicking on column 0 (eilers)
126 * #1599 - Security - change recommendation for opie-multiauth to opie-securityplugin (gints) 126 * #1599 - Security - change recommendation for opie-multiauth to opie-securityplugin (gints)
127 * #1604 - Checkbook crashed on startup (drw) 127 * #1604 - Checkbook crashed on startup (drw)
128 * #1608 - Addressbook crashed after search, which may caused by not initialzed member variable (eilers) 128 * #1608 - Addressbook crashed after search, which may caused by not initialzed member variable (eilers)
129 * #1608 - QueryByExampe-Datediff on SQL database did not worked properly (eilers) 129 * #1608 - QueryByExampe-Datediff on SQL database did not worked properly (eilers)
130 * n.a. - Netsystemtime - fixed UI to prevent error dialog from displaying when it shouldn't, get rid of some compiler warnings (drw) 130 * n.a. - Netsystemtime - fixed UI to prevent error dialog from displaying when it shouldn't, get rid of some compiler warnings (drw)
131 * n.a. - PackageManager - fixed where last package in status file was not shown as installed when it should be (drw) 131 * n.a. - PackageManager - fixed where last package in status file was not shown as installed when it should be (drw)
132 * n.a. - PackageManager - fixed bug where lists_dir was not being honored at startup (drw) 132 * n.a. - PackageManager - fixed bug where lists_dir was not being honored at startup (drw)
133 * n.a. - PackageManager - provided default value for lists_dir when none is entered in configuration dialog (drw) 133 * n.a. - PackageManager - provided default value for lists_dir when none is entered in configuration dialog (drw)
134 * n.a. - OTabWidget - fixed scroll buttons, fix display position of tabs (drw) 134 * n.a. - OTabWidget - fixed scroll buttons, fix display position of tabs (drw)
135 * n.a. - AddressBook - fixed sorting by 'File As' name (drw) 135 * n.a. - AddressBook - fixed sorting by 'File As' name (drw)
136 * n.a. - AddressBook - fixed category handling for 'All' and 'Unfiled' (eilers) 136 * n.a. - AddressBook - fixed category handling for 'All' and 'Unfiled' (eilers)
137 * n.a. - AddressBook - fixed letter picker record selection and sort records afterwards (drw) 137 * n.a. - AddressBook - fixed letter picker record selection and sort records afterwards (drw)
138 138
139 Internal 139 Internal
140 -------- 140 --------
141 * Worked around bug in Qt/Embedded 2.3.10: qt_version() returns 231 (mickeyl) 141 * Worked around bug in Qt/Embedded 2.3.10: qt_version() returns 231 (mickeyl)
142 * Killed the need for weak symbols in QtE (zecke) 142 * Killed the need for weak symbols in QtE (zecke)
143 * Added optional building libqpe without inline images (mickeyl) 143 * Added optional building libqpe without inline images (mickeyl)
144 * OColorButton - fixed so does not emit a colorSelected signal inside of resizeEvent (drw) 144 * OColorButton - fixed so does not emit a colorSelected signal inside of resizeEvent (drw)
145 145
146 2005-02-03Opie 1.1.9 146 2005-02-03Opie 1.1.9
147 147
148 New Features 148 New Features
149 ------------ 149 ------------
150 * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl) 150 * Number of icon columns in Launcher is customizable through Launcher.conf (hrw,zecke,mickeyl)
151 * Number of icon columns in Launcher is customizable through LauncherSettings (mickeyl) 151 * Number of icon columns in Launcher is customizable through LauncherSettings (mickeyl)
152 * Usability enhancements in OpieIRC (skyhusker) 152 * Usability enhancements in OpieIRC (skyhusker)
153 153
154 Fixed Bugs 154 Fixed Bugs
155 ---------- 155 ----------
156 * #1501 - Fixed bug in todo sql backend (eilers) 156 * #1501 - Fixed bug in todo sql backend (eilers)
157 * #1505 - Added more Swap sizes in memoryapplet (mickeyl) 157 * #1505 - Added more Swap sizes in memoryapplet (mickeyl)
158 * #1525 - Hopefully fixed double alarms and not removing alarms set with the Clock application (zecke) 158 * #1525 - Hopefully fixed double alarms and not removing alarms set with the Clock application (zecke)
159 * #1533 - Security Owner Dialog (shown in case of unsuccessfull authentiacation) wasn't able to display information in non latin1 encoding (zecke) 159 * #1533 - Security Owner Dialog (shown in case of unsuccessfull authentiacation) wasn't able to display information in non latin1 encoding (zecke)
160 * n.a. - Removed hard coded font sizes in a couple of inputmethods (mickeyl) 160 * n.a. - Removed hard coded font sizes in a couple of inputmethods (mickeyl)
161 * n.a. - Removed MediumDlg appearing prior to FirstUsage wizard (i.e. calibration) (mickeyl) 161 * n.a. - Removed MediumDlg appearing prior to FirstUsage wizard (i.e. calibration) (mickeyl)
162 * n.a. - Fixed numerous buglets in OpieIRC (skyhusker) 162 * n.a. - Fixed numerous buglets in OpieIRC (skyhusker)
163 163
164 Internal 164 Internal
165 -------- 165 --------
166 * Added the Qtopia 1.7 SDK macros for quick-apps to easa compilation of 3rd party apps against our headers (mickeyl) 166 * Added the Qtopia 1.7 SDK macros for quick-apps to easa compilation of 3rd party apps against our headers (mickeyl)
167 * You can now use the Opie build system in combination with a OpenEmbedded staging area which makes a nice cross development environment (mickeyl) 167 * You can now use the Opie build system in combination with a OpenEmbedded staging area which makes a nice cross development environment (mickeyl)
168 * Made Opie compilable with Qt/Embedded 2.3.10 (ar) 168 * Made Opie compilable with Qt/Embedded 2.3.10 (ar)
169 * Changed Launcher to get default orientation from ODevice w/ QWS_DISPLAY overriding (mickeyl) 169 * Changed Launcher to get default orientation from ODevice w/ QWS_DISPLAY overriding (mickeyl)
170 * Build tree cleanups (mickeyl) 170 * Build tree cleanups (mickeyl)
171 171
172 2004-11-26Opie 1.1.8 172 2004-11-26Opie 1.1.8
173 173
174 New Features 174 New Features
175 ------------ 175 ------------
176 * PackageManager supports installation of local ipkg files (drw) 176 * PackageManager supports installation of local ipkg files (drw)
177 * PackageManager supports linking of applications to root (drw) 177 * PackageManager supports linking of applications to root (drw)
178 * PackageManager supports src/gz feeds (drw,wimpie) 178 * PackageManager supports src/gz feeds (drw,wimpie)
179 * Added a syslog information tab to sysinfo (mickeyl) 179 * Added a syslog information tab to sysinfo (mickeyl)
180 * Added new, more consistent, PIM icons + a GIMP teplate (ar) 180 * Added new, more consistent, PIM icons + a GIMP teplate (ar)
181 181
182 Fixed Bugs 182 Fixed Bugs
183 ---------- 183 ----------
184 * #1017 - Tetrix doesn't display correctly for high resolution screens (drw) 184 * #1017 - Tetrix doesn't display correctly for high resolution screens (drw)
185 * #1269 - VCards were imported into personal area if it was activated (eilers) 185 * #1269 - VCards were imported into personal area if it was activated (eilers)
186 * #1464 - Packagemanager dont set active filter after install a package (drw) 186 * #1464 - Packagemanager dont set active filter after install a package (drw)
187 * #1479 - Improved VCard-Parser to import VCards created by Evolution 2 and Apple Addressbook (eilers) 187 * #1479 - Improved VCard-Parser to import VCards created by Evolution 2 and Apple Addressbook (eilers)
188 * #1493 - Fixed one column layout bug of the launcher (hrw) 188 * #1493 - Fixed one column layout bug of the launcher (hrw)
189 * n.a. - PackageManager - (Minor UI tweak) in filter dialog, when option is enabled, set focus to widget that corresponds to that option (drw) 189 * n.a. - PackageManager - (Minor UI tweak) in filter dialog, when option is enabled, set focus to widget that corresponds to that option (drw)
190 * n.a. - PackageManager - (Minor UI tweak) fix double entry in source feed configuration when adding a new feed (drw) 190 * n.a. - PackageManager - (Minor UI tweak) fix double entry in source feed configuration when adding a new feed (drw)
191 * n.a. - Battery Applet - fix sizing of battery info popup (drw,mickeyl) 191 * n.a. - Battery Applet - fix sizing of battery info popup (drw,mickeyl)
192 192
193 Internal 193 Internal
194 -------- 194 --------
195 * Moved libopie1 to unsupported (mickeyl) 195 * Moved libopie1 to unsupported (mickeyl)
196 * Implemented generic queryByExample() with incremental searching. A lot of internal changes of the Pim2-library (eilers) 196 * Implemented generic queryByExample() with incremental searching. A lot of internal changes of the Pim2-library (eilers)
197 * Added fast and full featured and incremental sorted() for SQL addressbook backend (eilers) 197 * Added fast and full featured and incremental sorted() for SQL addressbook backend (eilers)
198 198
199 2004-11-14Opie 1.1.7 199 2004-11-14Opie 1.1.7
200 200
201 New Features 201 New Features
202 ------------ 202 ------------
203 * libOpieDB now uses SQLite V3 instead V2. Remember to upgrade your database files! (eilers) 203 * libOpieDB now uses SQLite V3 instead V2. Remember to upgrade your database files! (eilers)
204 * Backup now uses the busy indicator when backing up and restore (ar) 204 * Backup now uses the busy indicator when backing up and restore (ar)
205 * OpiePlayer2 gained adding of Directories to the playlist (zecke) 205 * OpiePlayer2 gained adding of Directories to the playlist (zecke)
206 * OpiePlayer2 better error handling (zecke) 206 * OpiePlayer2 better error handling (zecke)
207 * OpiePlayer2 progress indication while streaming (zecke) 207 * OpiePlayer2 progress indication while streaming (zecke)
208 * OpiePlayer2 ported to use libxine 1.0.0-rc6a (brad,zecke) 208 * OpiePlayer2 ported to use libxine 1.0.0-rc6a (brad,zecke)
209 * Ported brightnessapplet from Qtopia 1.7 (mickeyl) 209 * Ported brightnessapplet from Qtopia 1.7 (mickeyl)
210 * Opie-Eye got a Digital Camera File Backend (alwin,zecke) 210 * Opie-Eye got a Digital Camera File Backend (alwin,zecke)
211 * Support for Tuxpad1 of Tradesquare.NL (mickeyl,zecke) 211 * Support for Tuxpad1 of Tradesquare.NL (mickeyl,zecke)
212 * Opie-Console use Custom Font and Size in a Profile (harlekin) 212 * Opie-Console use Custom Font and Size in a Profile (harlekin)
213 * Opie-Console transparently log the Output and Input to a file (harlekin) 213 * Opie-Console transparently log the Output and Input to a file (harlekin)
214 * Added new O-menu icon to lock the PDA immediately: opie-lockapplet (clem) 214 * Added new O-menu icon to lock the PDA immediately: opie-lockapplet (clem)
215 * Opie-Security now hides the plugin-based authentication tabs if no auth. plugin package is installed (clem) 215 * Opie-Security now hides the plugin-based authentication tabs if no auth. plugin package is installed (clem)
216 * Opie-Security gained a 'test authentication' button (clem) 216 * Opie-Security gained a 'test authentication' button (clem)
217 * Opie-Eye got a more unique layout (menubar), a slideshow, user can setup some defaults 217 * Opie-Eye got a more unique layout (menubar), a slideshow, user can setup some defaults
218 * Opie-Mail improve the handling of POP mail boxes (alwin) 218 * Opie-Mail improve the handling of POP mail boxes (alwin)
219 * Both Opie-Eye and Opie-Mail were greatly improved due the hard work of Rajko Albrecht(alwin) 219 * Both Opie-Eye and Opie-Mail were greatly improved due the hard work of Rajko Albrecht(alwin)
220 * Opie IRC - backports of the 'NeIRC fork' (zecke) 220 * Opie IRC - backports of the 'NeIRC fork' (zecke)
221 221
222 Fixed Bugs 222 Fixed Bugs
223 ---------- 223 ----------
224 * #501 - Pickboard is able to show 'Umlaute' (TT,zecke) 224 * #501 - Pickboard is able to show 'Umlaute' (TT,zecke)
225 * #608 - Make Opie usable for left handed users (zecke) 225 * #608 - Make Opie usable for left handed users (zecke)
226 * #957 - Import of VCards/VTodos/VEvents with BASE64 encoding (ljp,zecke) 226 * #957 - Import of VCards/VTodos/VEvents with BASE64 encoding (ljp,zecke)
227 * #1245 - Opie-Go 'paused' (zecke) 227 * #1245 - Opie-Go 'paused' (zecke)
228 * #1358 - DocTab didn't show any MimeTypes (was fixed earlier) (zecke) 228 * #1358 - DocTab didn't show any MimeTypes (was fixed earlier) (zecke)
229 * #1380 - QDateBookAccess::remove() doesn't remove entries (eilers, zecke) 229 * #1380 - QDateBookAccess::remove() doesn't remove entries (eilers, zecke)
230 * #1395 - Build VNC Backend with gcc3.4 230 * #1395 - Build VNC Backend with gcc3.4
231 * #1440 - The icon of opie-mobilemsg is missing (CoreDump) 231 * #1440 - The icon of opie-mobilemsg is missing (CoreDump)
232 * #1426 - Add missing opie-bartender Icon (CoreDump) 232 * #1426 - Add missing opie-bartender Icon (CoreDump)
233 * #1445 - Opie-Sheet Has No Icon (CoreDump) 233 * #1445 - Opie-Sheet Has No Icon (CoreDump)
234 * #1448 - Brightness Applet added (mickeyl) 234 * #1448 - Brightness Applet added (mickeyl)
235 * #1450 - ZSame didn't clear the bonus item after winning a game (zecke) 235 * #1450 - ZSame didn't clear the bonus item after winning a game (zecke)
236 * #1482 - Fix OFileSelector to be able to sort by size (zecke) 236 * #1482 - Fix OFileSelector to be able to sort by size (zecke)
237 * n.a. - Opie-mail: fixed some crasher, some layout-problems 237 * n.a. - Opie-mail: fixed some crasher, some layout-problems
238 * n.a. - Converted applications to not hardcode /opt/QtPalmtop but to use QPEApplication::qpeDir (zecke) 238 * n.a. - Converted applications to not hardcode /opt/QtPalmtop but to use QPEApplication::qpeDir (zecke)
239 * n.a. - Converted usage of qpeDir() not to include a '/' as first charachter of the string (zecke) 239 * n.a. - Converted usage of qpeDir() not to include a '/' as first charachter of the string (zecke)
240 * n.a. - Build system: Enable distcc and ccache when crosscompiling too, and use them everywhere we can (clem) 240 * n.a. - Build system: Enable distcc and ccache when crosscompiling too, and use them everywhere we can (clem)
241 * n.a. - Build system: Fix deps in several config.in (and fix scripts/deps.pl too) to stop breaking builds, especially with make -j highNumber (clem) 241 * n.a. - Build system: Fix deps in several config.in (and fix scripts/deps.pl too) to stop breaking builds, especially with make -j highNumber (clem)
242 * n.a. - Removed hardcoded icon size in a couple of applets (mickeyl) 242 * n.a. - Removed hardcoded icon size in a couple of applets (mickeyl)
243 243
244 Internal 244 Internal
245 -------- 245 --------
246 * Opie-Qashmoney has been moved to unsupported (mickeyl) 246 * Opie-Qashmoney has been moved to unsupported (mickeyl)
247 * Opie-Ubrowser has been moved to unsupported (mickeyl) 247 * Opie-Ubrowser has been moved to unsupported (mickeyl)
248 248
249 2004-09-17Opie 1.1.6 249 2004-09-17Opie 1.1.6
250 250
251 New Features 251 New Features
252 ------------ 252 ------------
253 * Fifteen gained configurable number of items (zecke) 253 * Fifteen gained configurable number of items (zecke)
254 * Fifteen can have custom background images (zecke) 254 * Fifteen can have custom background images (zecke)
255 * Added daemonizing capabilities to QWS Server [via Qt/Embedded] (mickeyl) 255 * Added daemonizing capabilities to QWS Server [via Qt/Embedded] (mickeyl)
256 * Integrated the new security framework into libopie2 (zecke,clem) 256 * Integrated the new security framework into libopie2 (zecke,clem)
257 * Converted the launcher to use the new security framework (zecke) 257 * Converted the launcher to use the new security framework (zecke)
258 * Backup can now handle custom locations for backup and restore (ar) 258 * Backup can now handle custom locations for backup and restore (ar)
259 * Implemented right-on-hold feedback (wimpie,zecke) 259 * Implemented right-on-hold feedback (wimpie,zecke)
260 * Lots of new features in opie-reader (tim,pohly) 260 * Lots of new features in opie-reader (tim,pohly)
261 * Build system cleanups (schurig) 261 * Build system cleanups (schurig)
262 262
diff --git a/noncore/settings/appearance2/appearance.cpp b/noncore/settings/appearance2/appearance.cpp
index eea1a19..054b645 100644
--- a/noncore/settings/appearance2/appearance.cpp
+++ b/noncore/settings/appearance2/appearance.cpp
@@ -141,572 +141,609 @@ QWidget *Appearance::createStyleTab ( QWidget *parent, Config &cfg )
141 m_style_list-> insertItem ( new StyleListItem ( "QPE", new QPEStyle ( ))); 141 m_style_list-> insertItem ( new StyleListItem ( "QPE", new QPEStyle ( )));
142#endif 142#endif
143 143
144 { 144 {
145 QString path = QPEApplication::qpeDir ( ); 145 QString path = QPEApplication::qpeDir ( );
146 path.append( "/plugins/styles/" ); 146 path.append( "/plugins/styles/" );
147 QStringList sl = QDir ( path, "lib*.so" ). entryList ( ); 147 QStringList sl = QDir ( path, "lib*.so" ). entryList ( );
148 148
149 for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) 149 for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
150 { 150 {
151 QString libstr = path; 151 QString libstr = path;
152 libstr.append( "/" ); 152 libstr.append( "/" );
153 libstr.append( *it ); 153 libstr.append( *it );
154 QLibrary *lib = new QLibrary ( libstr ); 154 QLibrary *lib = new QLibrary ( libstr );
155 StyleInterface *iface; 155 StyleInterface *iface;
156 156
157 if (( lib-> queryInterface ( IID_Style, (QUnknownInterface **) &iface ) == QS_OK ) && iface ) 157 if (( lib-> queryInterface ( IID_Style, (QUnknownInterface **) &iface ) == QS_OK ) && iface )
158 { 158 {
159 StyleListItem *slit = new StyleListItem ( lib, iface ); 159 StyleListItem *slit = new StyleListItem ( lib, iface );
160 m_style_list-> insertItem ( slit ); 160 m_style_list-> insertItem ( slit );
161 161
162 if ( slit-> key ( ) == s ) 162 if ( slit-> key ( ) == s )
163 m_style_list-> setCurrentItem ( slit ); 163 m_style_list-> setCurrentItem ( slit );
164 } 164 }
165 else 165 else
166 delete lib; 166 delete lib;
167 } 167 }
168 } 168 }
169 169
170 m_original_style = m_style_list-> currentItem ( ); 170 m_original_style = m_style_list-> currentItem ( );
171 styleClicked ( m_original_style ); 171 styleClicked ( m_original_style );
172 172
173 connect( m_style_list, SIGNAL( highlighted(int) ), this, SLOT( styleClicked(int) ) ); 173 connect( m_style_list, SIGNAL( highlighted(int) ), this, SLOT( styleClicked(int) ) );
174 174
175 return tab; 175 return tab;
176} 176}
177 177
178QWidget *Appearance::createDecoTab ( QWidget *parent, Config &cfg ) 178QWidget *Appearance::createDecoTab ( QWidget *parent, Config &cfg )
179{ 179{
180 QWidget* tab = new QWidget( parent, "DecoTab" ); 180 QWidget* tab = new QWidget( parent, "DecoTab" );
181 QVBoxLayout* vertLayout = new QVBoxLayout( tab, 3, 3 ); 181 QVBoxLayout* vertLayout = new QVBoxLayout( tab, 3, 3 );
182 182
183 m_deco_list = new QListBox( tab, "m_deco_list" ); 183 m_deco_list = new QListBox( tab, "m_deco_list" );
184 vertLayout->addWidget( m_deco_list ); 184 vertLayout->addWidget( m_deco_list );
185 QWhatsThis::add( m_deco_list, tr( "Window decorations control the way the application title bar and its buttons appear.\n\nClick here to select an available decoration." ) ); 185 QWhatsThis::add( m_deco_list, tr( "Window decorations control the way the application title bar and its buttons appear.\n\nClick here to select an available decoration." ) );
186 186
187 QString s = cfg. readEntry ( "Decoration", "libflat.so" ); 187 QString s = cfg. readEntry ( "Decoration", "libflat.so" );
188 188
189 m_deco_list-> insertItem ( new DecoListItem ( "QPE" )); 189 m_deco_list-> insertItem ( new DecoListItem ( "QPE" ));
190 190
191 { 191 {
192 QString path = QPEApplication::qpeDir(); 192 QString path = QPEApplication::qpeDir();
193 path.append( "/plugins/decorations/" ); 193 path.append( "/plugins/decorations/" );
194 QStringList sl = QDir ( path, "lib*.so" ). entryList ( ); 194 QStringList sl = QDir ( path, "lib*.so" ). entryList ( );
195 195
196 for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) 196 for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
197 { 197 {
198 QString libstr = path; 198 QString libstr = path;
199 libstr.append( "/" ); 199 libstr.append( "/" );
200 libstr.append( *it ); 200 libstr.append( *it );
201 QLibrary *lib = new QLibrary ( libstr ); 201 QLibrary *lib = new QLibrary ( libstr );
202 WindowDecorationInterface *iface; 202 WindowDecorationInterface *iface;
203 203
204 if ( lib-> queryInterface ( IID_WindowDecoration, (QUnknownInterface **) &iface ) == QS_OK ) 204 if ( lib-> queryInterface ( IID_WindowDecoration, (QUnknownInterface **) &iface ) == QS_OK )
205 { 205 {
206 DecoListItem *dlit = new DecoListItem ( lib, iface ); 206 DecoListItem *dlit = new DecoListItem ( lib, iface );
207 m_deco_list-> insertItem ( dlit ); 207 m_deco_list-> insertItem ( dlit );
208 208
209 if ( dlit-> key ( ) == s ) 209 if ( dlit-> key ( ) == s )
210 m_deco_list-> setCurrentItem ( dlit ); 210 m_deco_list-> setCurrentItem ( dlit );
211 } 211 }
212 else 212 else
213 delete lib; 213 delete lib;
214 } 214 }
215 } 215 }
216 216
217 m_original_deco = m_deco_list-> currentItem ( ); 217 m_original_deco = m_deco_list-> currentItem ( );
218 if ( m_deco_list-> currentItem ( ) < 0 ) 218 if ( m_deco_list-> currentItem ( ) < 0 )
219 m_deco_list-> setCurrentItem ( 0 ); 219 m_deco_list-> setCurrentItem ( 0 );
220 decoClicked ( m_original_deco ); 220 decoClicked ( m_original_deco );
221 221
222 connect( m_deco_list, SIGNAL( highlighted(int) ), this, SLOT( decoClicked(int) ) ); 222 connect( m_deco_list, SIGNAL( highlighted(int) ), this, SLOT( decoClicked(int) ) );
223 223
224 return tab; 224 return tab;
225} 225}
226 226
227QWidget *Appearance::createFontTab ( QWidget *parent, Config &cfg ) 227QWidget *Appearance::createFontTab ( QWidget *parent, Config &cfg )
228{ 228{
229 QString familyStr = cfg. readEntry ( "FontFamily", "Helvetica" ); 229 QString familyStr = cfg. readEntry ( "FontFamily", "Helvetica" );
230 QString styleStr = cfg. readEntry ( "FontStyle", "Regular" ); 230 QString styleStr = cfg. readEntry ( "FontStyle", "Regular" );
231 int size = cfg. readNumEntry ( "FontSize", 10 ); 231 int size = cfg. readNumEntry ( "FontSize", 10 );
232 232
233 m_fontselect = new OFontSelector ( false, parent, "FontTab" ); 233 m_fontselect = new OFontSelector ( false, parent, "FontTab" );
234 m_fontselect-> setSelectedFont ( familyStr, styleStr, size ); 234 m_fontselect-> setSelectedFont ( familyStr, styleStr, size );
235 QWhatsThis::add( m_fontselect, tr( "Select the desired name, style and size of the default font applications will use." ) ); 235 QWhatsThis::add( m_fontselect, tr( "Select the desired name, style and size of the default font applications will use." ) );
236 236
237 connect( m_fontselect, SIGNAL( fontSelected(const QFont&)), 237 connect( m_fontselect, SIGNAL( fontSelected(const QFont&)),
238 this, SLOT( fontClicked(const QFont&))); 238 this, SLOT( fontClicked(const QFont&)));
239 239
240 return m_fontselect; 240 return m_fontselect;
241} 241}
242 242
243QWidget *Appearance::createColorTab ( QWidget *parent, Config &cfg ) 243QWidget *Appearance::createColorTab ( QWidget *parent, Config &cfg )
244{ 244{
245 QWidget *tab = new QWidget( parent, "ColorTab" ); 245 QWidget *tab = new QWidget( parent, "ColorTab" );
246 QGridLayout *gridLayout = new QGridLayout( tab, 0, 0, 3, 3 ); 246 QGridLayout *gridLayout = new QGridLayout( tab, 0, 0, 3, 3 );
247 gridLayout->setRowStretch ( 3, 10 ); 247 gridLayout->setRowStretch ( 3, 10 );
248 248
249 m_color_list = new QListBox ( tab ); 249 m_color_list = new QListBox ( tab );
250 gridLayout->addMultiCellWidget ( m_color_list, 0, 3, 0, 0 ); 250 gridLayout->addMultiCellWidget ( m_color_list, 0, 3, 0, 0 );
251 connect( m_color_list, SIGNAL( highlighted(int) ), this, SLOT( colorClicked(int) ) ); 251 connect( m_color_list, SIGNAL( highlighted(int) ), this, SLOT( colorClicked(int) ) );
252 QWhatsThis::add( m_color_list, tr( "Color schemes are a collection of colors which are used for various parts of the display.\n\nClick here to select an available scheme." ) ); 252 QWhatsThis::add( m_color_list, tr( "Color schemes are a collection of colors which are used for various parts of the display.\n\nClick here to select an available scheme." ) );
253 253
254 m_color_list-> insertItem ( new ColorListItem ( tr( "Current scheme" ), cfg )); 254 m_color_list-> insertItem ( new ColorListItem ( tr( "Current scheme" ), cfg ));
255 255
256 QString path = QPEApplication::qpeDir ( ); 256 QString path = QPEApplication::qpeDir ( );
257 path.append( "/etc/colors/" ); 257 path.append( "/etc/colors/" );
258 QStringList sl = QDir ( path ). entryList ( "*.scheme" ); 258 QStringList sl = QDir ( path ). entryList ( "*.scheme" );
259 259
260 for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) 260 for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
261 { 261 {
262 QString name = (*it). left ((*it). find ( ".scheme" )); 262 QString name = (*it). left ((*it). find ( ".scheme" ));
263 QString pathstr = path; 263 QString pathstr = path;
264 pathstr.append( *it ); 264 pathstr.append( *it );
265 Config config ( pathstr, Config::File ); 265 Config config ( pathstr, Config::File );
266 config. setGroup ( "Colors" ); 266 config. setGroup ( "Colors" );
267 267
268 m_color_list-> insertItem ( new ColorListItem ( name, config )); 268 m_color_list-> insertItem ( new ColorListItem ( name, config ));
269 } 269 }
270 270
271 m_color_list-> setCurrentItem ( 0 ); 271 m_color_list-> setCurrentItem ( 0 );
272 272
273 QPushButton* tempButton = new QPushButton( tab, "editSchemeButton" ); 273 QPushButton* tempButton = new QPushButton( tab, "editSchemeButton" );
274 tempButton->setText( tr( "Edit..." ) ); 274 tempButton->setText( tr( "Edit..." ) );
275 connect( tempButton, SIGNAL( clicked() ), this, SLOT( editSchemeClicked() ) ); 275 connect( tempButton, SIGNAL( clicked() ), this, SLOT( editSchemeClicked() ) );
276 gridLayout->addWidget( tempButton, 0, 1 ); 276 gridLayout->addWidget( tempButton, 0, 1 );
277 QWhatsThis::add( tempButton, tr( "Click here to change the colors in the current color scheme." ) ); 277 QWhatsThis::add( tempButton, tr( "Click here to change the colors in the current color scheme." ) );
278 278
279 tempButton = new QPushButton( tab, "deleteSchemeButton" ); 279 tempButton = new QPushButton( tab, "deleteSchemeButton" );
280 tempButton->setText( tr( "Delete" ) ); 280 tempButton->setText( tr( "Delete" ) );
281 connect( tempButton, SIGNAL( clicked() ), this, SLOT( deleteSchemeClicked() ) ); 281 connect( tempButton, SIGNAL( clicked() ), this, SLOT( deleteSchemeClicked() ) );
282 gridLayout->addWidget( tempButton, 1, 1 ); 282 gridLayout->addWidget( tempButton, 1, 1 );
283 QWhatsThis::add( tempButton, tr( "Click here to delete the color scheme selected in the list to the left." ) ); 283 QWhatsThis::add( tempButton, tr( "Click here to delete the color scheme selected in the list to the left." ) );
284 284
285 tempButton = new QPushButton( tab, "saveSchemeButton" ); 285 tempButton = new QPushButton( tab, "saveSchemeButton" );
286 tempButton->setText( tr( "Save" ) ); 286 tempButton->setText( tr( "Save" ) );
287 connect( tempButton, SIGNAL( clicked() ), this, SLOT( saveSchemeClicked() ) ); 287 connect( tempButton, SIGNAL( clicked() ), this, SLOT( saveSchemeClicked() ) );
288 gridLayout->addWidget( tempButton, 2, 1 ); 288 gridLayout->addWidget( tempButton, 2, 1 );
289 QWhatsThis::add( tempButton, tr( "Click here to name and save the current color scheme." ) ); 289 QWhatsThis::add( tempButton, tr( "Click here to name and save the current color scheme." ) );
290 290
291 return tab; 291 return tab;
292} 292}
293 293
294QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg ) 294QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg )
295{ 295{
296 QWidget *tab = new QWidget ( parent ); 296 QWidget *tab = new QWidget ( parent );
297 QVBoxLayout *vertLayout = new QVBoxLayout( tab, 3, 3 ); 297 QVBoxLayout *vertLayout = new QVBoxLayout( tab, 3, 3 );
298 298
299 /* 299 /*
300 * show scrollbars on the left? 300 * show scrollbars on the left?
301 */ 301 */
302 m_leftHand = new QCheckBox( tr("Show Scrollbars on the left"), tab ); 302 m_leftHand = new QCheckBox( tr("Show Scrollbars on the left"), tab );
303 m_leftHand->setChecked( cfg.readBoolEntry( "LeftHand", false ) ); 303 m_leftHand->setChecked( cfg.readBoolEntry( "LeftHand", false ) );
304 QWhatsThis::add( m_leftHand, tr( "Click here to display scrollbars on the left side instead of the right." ) ); 304 QWhatsThis::add( m_leftHand, tr( "Click here to display scrollbars on the left side instead of the right." ) );
305 vertLayout->addWidget( m_leftHand ); 305 vertLayout->addWidget( m_leftHand );
306 306
307 QFrame *f = new QFrame ( tab ); 307 QFrame *f = new QFrame ( tab );
308 f-> setFrameStyle ( QFrame::HLine | QFrame::Sunken ); 308 f-> setFrameStyle ( QFrame::HLine | QFrame::Sunken );
309 vertLayout-> addWidget ( f ); 309 vertLayout-> addWidget ( f );
310 vertLayout-> addSpacing ( 3 ); 310 vertLayout-> addSpacing ( 3 );
311 311
312 312
313 QGridLayout* gridLayout = new QGridLayout ( vertLayout, 0, 0, 3, 0 ); 313 QGridLayout* gridLayout = new QGridLayout ( vertLayout, 0, 0, 3, 0 );
314 314
315 int style = cfg. readNumEntry ( "TabStyle", 2 ) - 1; 315 int style = cfg. readNumEntry ( "TabStyle", 2 ) - 1;
316 bool tabtop = ( cfg. readEntry ( "TabPosition", "Top" ) == "Top" ); 316 bool tabtop = ( cfg. readEntry ( "TabPosition", "Top" ) == "Top" );
317 317
318 QLabel* label = new QLabel( tr( "Tab style:" ), tab ); 318 QLabel* label = new QLabel( tr( "Tab style:" ), tab );
319 gridLayout-> addWidget ( label, 0, 0 ); 319 gridLayout-> addWidget ( label, 0, 0 );
320 QWhatsThis::add( label, tr( "Click here to select a desired style for tabbed dialogs (such as this application). The styles available are:\n\n1. Tabs - normal tabs with text labels only\n2. Tabs w/icons - tabs with icons for each tab, text label only appears on current tab\n3. Drop down list - a vertical listing of tabs\n4. Drop down list w/icons - a vertical listing of tabs with icons" ) ); 320 QWhatsThis::add( label, tr( "Click here to select a desired style for tabbed dialogs (such as this application). The styles available are:\n\n1. Tabs - normal tabs with text labels only\n2. Tabs w/icons - tabs with icons for each tab, text label only appears on current tab\n3. Drop down list - a vertical listing of tabs\n4. Drop down list w/icons - a vertical listing of tabs with icons" ) );
321 321
322 QButtonGroup* btngrp = new QButtonGroup( tab, "buttongroup" ); 322 QButtonGroup* btngrp = new QButtonGroup( tab, "buttongroup" );
323 btngrp-> hide ( ); 323 btngrp-> hide ( );
324 btngrp-> setExclusive ( true ); 324 btngrp-> setExclusive ( true );
325 325
326 m_tabstyle_list = new QComboBox ( false, tab, "tabstyle" ); 326 m_tabstyle_list = new QComboBox ( false, tab, "tabstyle" );
327 m_tabstyle_list-> insertItem ( tr( "Tabs" )); 327 m_tabstyle_list-> insertItem ( tr( "Tabs" ));
328 m_tabstyle_list-> insertItem ( tr( "Tabs w/icons" )); 328 m_tabstyle_list-> insertItem ( tr( "Tabs w/icons" ));
329 m_tabstyle_list-> insertItem ( tr( "Drop down list" )); 329 m_tabstyle_list-> insertItem ( tr( "Drop down list" ));
330 m_tabstyle_list-> insertItem ( tr( "Drop down list w/icons" )); 330 m_tabstyle_list-> insertItem ( tr( "Drop down list w/icons" ));
331 m_tabstyle_list-> setCurrentItem ( style ); 331 m_tabstyle_list-> setCurrentItem ( style );
332 gridLayout-> addMultiCellWidget ( m_tabstyle_list, 0, 0, 1, 2 ); 332 gridLayout-> addMultiCellWidget ( m_tabstyle_list, 0, 0, 1, 2 );
333 QWhatsThis::add( m_tabstyle_list, tr( "Click here to select a desired style for tabbed dialogs (such as this application). The styles available are:\n\n1. Tabs - normal tabs with text labels only\n2. Tabs w/icons - tabs with icons for each tab, text label only appears on current tab\n3. Drop down list - a vertical listing of tabs\n4. Drop down list w/icons - a vertical listing of tabs with icons" ) ); 333 QWhatsThis::add( m_tabstyle_list, tr( "Click here to select a desired style for tabbed dialogs (such as this application). The styles available are:\n\n1. Tabs - normal tabs with text labels only\n2. Tabs w/icons - tabs with icons for each tab, text label only appears on current tab\n3. Drop down list - a vertical listing of tabs\n4. Drop down list w/icons - a vertical listing of tabs with icons" ) );
334 334
335 m_tabstyle_top = new QRadioButton( tr( "Top" ), tab, "tabpostop" ); 335 m_tabstyle_top = new QRadioButton( tr( "Top" ), tab, "tabpostop" );
336 btngrp-> insert ( m_tabstyle_top ); 336 btngrp-> insert ( m_tabstyle_top );
337 gridLayout-> addWidget( m_tabstyle_top, 1, 1 ); 337 gridLayout-> addWidget( m_tabstyle_top, 1, 1 );
338 QWhatsThis::add( m_tabstyle_top, tr( "Click here so that tabs appear at the top of the window." ) ); 338 QWhatsThis::add( m_tabstyle_top, tr( "Click here so that tabs appear at the top of the window." ) );
339 339
340 m_tabstyle_bottom = new QRadioButton( tr( "Bottom" ), tab, "tabposbottom" ); 340 m_tabstyle_bottom = new QRadioButton( tr( "Bottom" ), tab, "tabposbottom" );
341 btngrp-> insert ( m_tabstyle_bottom ); 341 btngrp-> insert ( m_tabstyle_bottom );
342 gridLayout-> addWidget( m_tabstyle_bottom, 1, 2 ); 342 gridLayout-> addWidget( m_tabstyle_bottom, 1, 2 );
343 QWhatsThis::add( m_tabstyle_bottom, tr( "Click here so that tabs appear at the bottom of the window." ) ); 343 QWhatsThis::add( m_tabstyle_bottom, tr( "Click here so that tabs appear at the bottom of the window." ) );
344 344
345 m_tabstyle_top-> setChecked ( tabtop ); 345 m_tabstyle_top-> setChecked ( tabtop );
346 m_tabstyle_bottom-> setChecked ( !tabtop ); 346 m_tabstyle_bottom-> setChecked ( !tabtop );
347 347
348 m_original_tabstyle = style; 348 m_original_tabstyle = style;
349 m_original_tabpos = tabtop; 349 m_original_tabpos = tabtop;
350 350
351 vertLayout-> addSpacing ( 3 ); 351 vertLayout-> addSpacing ( 3 );
352 QHBoxLayout *rotLay = new QHBoxLayout ( vertLayout, 3 ); 352 QHBoxLayout *rotLay = new QHBoxLayout ( vertLayout, 3 );
353 353
354 QLabel* rotlabel = new QLabel( tr( "Rotation direction:" ), tab ); 354 QLabel* rotlabel = new QLabel( tr( "Rotation direction:" ), tab );
355 m_rotdir_cw = new QRadioButton( tab, "rotdir_cw" ); 355 m_rotdir_cw = new QRadioButton( tab, "rotdir_cw" );
356 m_rotdir_ccw = new QRadioButton( tab, "rotdir_ccw" ); 356 m_rotdir_ccw = new QRadioButton( tab, "rotdir_ccw" );
357 m_rotdir_flip = new QRadioButton( tab, "rotdir_flip" ); 357 m_rotdir_flip = new QRadioButton( tab, "rotdir_flip" );
358 QButtonGroup* rotbtngrp = new QButtonGroup( tab, "rotbuttongroup" ); 358 QButtonGroup* rotbtngrp = new QButtonGroup( tab, "rotbuttongroup" );
359 359
360 rotbtngrp-> hide ( ); 360 rotbtngrp-> hide ( );
361 rotbtngrp-> setExclusive ( true ); 361 rotbtngrp-> setExclusive ( true );
362 rotbtngrp-> insert ( m_rotdir_cw ); 362 rotbtngrp-> insert ( m_rotdir_cw );
363 rotbtngrp-> insert ( m_rotdir_ccw ); 363 rotbtngrp-> insert ( m_rotdir_ccw );
364 rotbtngrp-> insert ( m_rotdir_flip ); 364 rotbtngrp-> insert ( m_rotdir_flip );
365 365
366 QImage ccwImage = Opie::Core::OResource::loadImage( "redo", Opie::Core::OResource::SmallIcon ); 366 QImage ccwImage = Opie::Core::OResource::loadImage( "redo", Opie::Core::OResource::SmallIcon );
367 QPixmap cw, ccw, flip; 367 QPixmap cw, ccw, flip;
368 cw.convertFromImage( ccwImage ); 368 cw.convertFromImage( ccwImage );
369 ccw.convertFromImage( ccwImage.mirror( 1, 0 ) ); 369 ccw.convertFromImage( ccwImage.mirror( 1, 0 ) );
370 flip.convertFromImage( Opie::Core::OResource::loadImage( "pass", Opie::Core::OResource::SmallIcon ) ); 370 flip.convertFromImage( Opie::Core::OResource::loadImage( "pass", Opie::Core::OResource::SmallIcon ) );
371 371
372 m_rotdir_cw-> setPixmap( cw ); 372 m_rotdir_cw-> setPixmap( cw );
373 m_rotdir_ccw-> setPixmap( ccw ); 373 m_rotdir_ccw-> setPixmap( ccw );
374 m_rotdir_flip-> setPixmap( flip ); 374 m_rotdir_flip-> setPixmap( flip );
375 375
376 rotLay-> addWidget ( rotlabel, 0 ); 376 rotLay-> addWidget ( rotlabel, 0 );
377 rotLay-> addWidget ( m_rotdir_cw, 0 ); 377 rotLay-> addWidget ( m_rotdir_cw, 0 );
378 rotLay-> addWidget ( m_rotdir_ccw, 0 ); 378 rotLay-> addWidget ( m_rotdir_ccw, 0 );
379 rotLay-> addWidget ( m_rotdir_flip, 0 ); 379 rotLay-> addWidget ( m_rotdir_flip, 0 );
380 380
381 int rotDirection = cfg.readNumEntry( "rotatedir" ); 381 int rotDirection = cfg.readNumEntry( "rotatedir" );
382 ODirection rot = CW; 382 ODirection rot = CW;
383 383
384 if (rotDirection == -1) 384 if (rotDirection == -1)
385 { 385 {
386 rot = ODevice::inst ( )-> direction ( ); 386 rot = ODevice::inst ( )-> direction ( );
387 } 387 }
388 else 388 else
389 { 389 {
390 rot = (ODirection)rotDirection; 390 rot = (ODirection)rotDirection;
391 } 391 }
392 392
393 m_rotdir_cw-> setChecked ( rot == CW ); 393 m_rotdir_cw-> setChecked ( rot == CW );
394 m_rotdir_ccw-> setChecked ( rot == CCW ); 394 m_rotdir_ccw-> setChecked ( rot == CCW );
395 m_rotdir_flip-> setChecked ( rot == Flip ); 395 m_rotdir_flip-> setChecked ( rot == Flip );
396 396
397 QFrame *f2 = new QFrame ( tab );
398 f2-> setFrameStyle ( QFrame::HLine | QFrame::Sunken );
399 vertLayout-> addWidget ( f2 );
400 vertLayout-> addSpacing ( 3 );
401
402 QHBoxLayout *bigIconlay = new QHBoxLayout ( vertLayout, 3 );
403
404 QLabel* label2 = new QLabel( tr( "&Big Icon size:" ), tab );
405 bigIconlay-> addWidget ( label2, 0, 0 );
406
407 m_bigIconSize = new QSpinBox(0, 128, 1, tab);
408 m_bigIconSize->setValue(cfg.readNumEntry( "BigIconSize" ));
409 bigIconlay->addWidget( m_bigIconSize );
410 label2->setBuddy( m_bigIconSize );
411 QWhatsThis::add( label2, tr( "Big Icon Size determines the size of the application icons in Launcher" ) );
412 QWhatsThis::add( m_bigIconSize, tr( "Big Icon Size determines the size of the application icons in Launcher" ) );
413
414 QHBoxLayout *smallIconlay = new QHBoxLayout ( vertLayout, 3 );
415
416 QLabel* label3 = new QLabel( tr( "&Small Icon size:" ), tab );
417 smallIconlay-> addWidget ( label3, 0, 0 );
418
419 m_smallIconSize = new QSpinBox(0, 128, 1, tab);
420 m_smallIconSize->setValue(cfg.readNumEntry( "SmallIconSize" ));
421 smallIconlay->addWidget( m_smallIconSize );
422 label3->setBuddy( m_smallIconSize );
423 QWhatsThis::add( label3, tr( "Small Icon Size determines the size of many of the icons seen in applications (in menus, tab bars, tool bars, etc.), as well as the size of taskbar." ) );
424 QWhatsThis::add( m_smallIconSize, tr( "Small Icon Size determines the size of many of the icons seen in applications (in menus, tab bars, tool bars, etc.), as well as the size of taskbar." ) );
425
426 m_useBigPixmaps = new QCheckBox( tr("use Big &Pixmaps"), tab);
427 m_useBigPixmaps->setChecked(cfg.readBoolEntry( "useBigPixmaps" ));
428 vertLayout->addWidget( m_useBigPixmaps );
429 QWhatsThis::add( m_useBigPixmaps, tr( "Enlarge toolbar pixmaps" ) );
397 430
398 /* 431 /*
399 * add a spacing 432 * add a spacing
400 */ 433 */
401 vertLayout->addItem( new QSpacerItem( 1, 1, QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding ) ); 434 vertLayout->addItem( new QSpacerItem( 1, 1, QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding ) );
402 return tab; 435 return tab;
403} 436}
404 437
405 438
406Appearance::Appearance( QWidget* parent, const char* name, WFlags ) 439Appearance::Appearance( QWidget* parent, const char* name, WFlags )
407 : QDialog ( parent, name, true, WStyle_ContextHelp ) 440 : QDialog ( parent, name, true, WStyle_ContextHelp )
408{ 441{
409 setCaption( tr( "Appearance Settings" ) ); 442 setCaption( tr( "Appearance Settings" ) );
410 443
411 Config config( "qpe" ); 444 Config config( "qpe" );
412 config.setGroup( "Appearance" ); 445 config.setGroup( "Appearance" );
413 446
414 QVBoxLayout *top = new QVBoxLayout ( this, 3, 3 ); 447 QVBoxLayout *top = new QVBoxLayout ( this, 3, 3 );
415 448
416 m_sample = new SampleWindow ( this ); 449 m_sample = new SampleWindow ( this );
417 450
418 m_sample-> setDecoration ( new DefaultWindowDecoration ( ) ); 451 m_sample-> setDecoration ( new DefaultWindowDecoration ( ) );
419 QWhatsThis::add( m_sample, tr( "This is a preview window. Look here to see your new appearance as options are changed." ) ); 452 QWhatsThis::add( m_sample, tr( "This is a preview window. Look here to see your new appearance as options are changed." ) );
420 453
421 OTabWidget* tw = new OTabWidget ( this, "tabwidget", OTabWidget::Global, OTabWidget::Bottom ); 454 OTabWidget* tw = new OTabWidget ( this, "tabwidget", OTabWidget::Global, OTabWidget::Bottom );
422 QWidget *styletab; 455 QWidget *styletab;
423 456
424 m_color_list = 0; 457 m_color_list = 0;
425 458
426 tw-> addTab ( styletab = createStyleTab ( tw, config ), "appearance", tr( "Style" )); 459 tw-> addTab ( styletab = createStyleTab ( tw, config ), "appearance", tr( "Style" ));
427 tw-> addTab ( createFontTab ( tw, config ), "font", tr( "Font" )); 460 tw-> addTab ( createFontTab ( tw, config ), "font", tr( "Font" ));
428 tw-> addTab ( createColorTab ( tw, config ), "appearance/color", tr( "Colors" ) ); 461 tw-> addTab ( createColorTab ( tw, config ), "appearance/color", tr( "Colors" ) );
429 tw-> addTab ( createDecoTab ( tw, config ), "appearance/deco", tr( "Windows" ) ); 462 tw-> addTab ( createDecoTab ( tw, config ), "appearance/deco", tr( "Windows" ) );
430 tw-> addTab ( m_advtab = createAdvancedTab ( tw, config ), "SettingsIcon", tr( "Advanced" ) ); 463 tw-> addTab ( m_advtab = createAdvancedTab ( tw, config ), "SettingsIcon", tr( "Advanced" ) );
431 464
432 top-> addWidget ( tw, 10 ); 465 top-> addWidget ( tw, 10 );
433 top-> addWidget ( m_sample, 1 ); 466 top-> addWidget ( m_sample, 1 );
434 467
435 tw-> setCurrentTab ( styletab ); 468 tw-> setCurrentTab ( styletab );
436 connect ( tw, SIGNAL( currentChanged(QWidget*)), this, SLOT( tabChanged(QWidget*))); 469 connect ( tw, SIGNAL( currentChanged(QWidget*)), this, SLOT( tabChanged(QWidget*)));
437 470
438 m_style_changed = m_font_changed = m_color_changed = m_deco_changed = false; 471 m_style_changed = m_font_changed = m_color_changed = m_deco_changed = false;
439} 472}
440 473
441Appearance::~Appearance() 474Appearance::~Appearance()
442{} 475{}
443 476
444void Appearance::tabChanged ( QWidget *w ) 477void Appearance::tabChanged ( QWidget *w )
445{ 478{
446 if ( w == m_advtab ) 479 if ( w == m_advtab )
447 { 480 {
448 m_sample-> hide ( ); 481 m_sample-> hide ( );
449 updateGeometry ( ); // shouldn't be necessary ... 482 updateGeometry ( ); // shouldn't be necessary ...
450 } 483 }
451 else 484 else
452 m_sample-> show ( ); 485 m_sample-> show ( );
453} 486}
454 487
455void Appearance::accept ( ) 488void Appearance::accept ( )
456{ 489{
457 bool newtabpos = m_tabstyle_top-> isChecked ( ); 490 bool newtabpos = m_tabstyle_top-> isChecked ( );
458 int newtabstyle = m_tabstyle_list-> currentItem ( ); 491 int newtabstyle = m_tabstyle_list-> currentItem ( );
459 492
460 Config config ( "qpe" ); 493 Config config ( "qpe" );
461 config. setGroup ( "Appearance" ); 494 config. setGroup ( "Appearance" );
462 495
463 if ( m_style_changed ) 496 if ( m_style_changed )
464 { 497 {
465 StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( )); 498 StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( ));
466 if ( item ) 499 if ( item )
467 config.writeEntry( "Style", item-> key ( )); 500 config.writeEntry( "Style", item-> key ( ));
468 } 501 }
469 502
470 if ( m_deco_changed ) 503 if ( m_deco_changed )
471 { 504 {
472 DecoListItem *item = (DecoListItem *) m_deco_list-> item ( m_deco_list-> currentItem ( )); 505 DecoListItem *item = (DecoListItem *) m_deco_list-> item ( m_deco_list-> currentItem ( ));
473 if ( item ) 506 if ( item )
474 config.writeEntry( "Decoration", item-> key ( )); 507 config.writeEntry( "Decoration", item-> key ( ));
475 } 508 }
476 509
477 if (( newtabstyle != m_original_tabstyle ) || ( newtabpos != m_original_tabpos )) 510 if (( newtabstyle != m_original_tabstyle ) || ( newtabpos != m_original_tabpos ))
478 { 511 {
479 config. writeEntry ( "TabStyle", newtabstyle + 1 ); 512 config. writeEntry ( "TabStyle", newtabstyle + 1 );
480 config. writeEntry ( "TabPosition", newtabpos ? "Top" : "Bottom" ); 513 config. writeEntry ( "TabPosition", newtabpos ? "Top" : "Bottom" );
481 } 514 }
482 515
483 if ( m_font_changed ) 516 if ( m_font_changed )
484 { 517 {
485 config. writeEntry ( "FontFamily", m_fontselect-> fontFamily ( )); 518 config. writeEntry ( "FontFamily", m_fontselect-> fontFamily ( ));
486 config. writeEntry ( "FontStyle", m_fontselect-> fontStyle ( )); 519 config. writeEntry ( "FontStyle", m_fontselect-> fontStyle ( ));
487 config. writeEntry ( "FontSize", m_fontselect-> fontSize ( )); 520 config. writeEntry ( "FontSize", m_fontselect-> fontSize ( ));
488 } 521 }
489 522
490 523
491 if ( m_color_changed ) 524 if ( m_color_changed )
492 { 525 {
493 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( )); 526 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( ));
494 527
495 if ( item ) 528 if ( item )
496 item-> save ( config ); 529 item-> save ( config );
497 } 530 }
498 531
499 ODirection rot; 532 ODirection rot;
500 if (m_rotdir_ccw-> isChecked ( )) 533 if (m_rotdir_ccw-> isChecked ( ))
501 { 534 {
502 rot = CCW; 535 rot = CCW;
503 } 536 }
504 else if (m_rotdir_cw-> isChecked ( )) 537 else if (m_rotdir_cw-> isChecked ( ))
505 { 538 {
506 rot = CW; 539 rot = CW;
507 } 540 }
508 else 541 else
509 { 542 {
510 rot = Flip; 543 rot = Flip;
511 } 544 }
512 config. writeEntry ( "rotatedir", (int)rot ); 545 config. writeEntry ( "rotatedir", (int)rot );
513 546
514 config. writeEntry( "LeftHand", m_leftHand->isChecked() ); 547 config. writeEntry( "LeftHand", m_leftHand->isChecked() );
515 548
549 config. writeEntry( "useBigPixmaps", m_useBigPixmaps->isChecked() );
550 config. writeEntry( "BigIconSize", m_bigIconSize->value() );
551 config. writeEntry( "SmallIconSize", m_smallIconSize->value() );
552
516 config. write ( ); // need to flush the config info first 553 config. write ( ); // need to flush the config info first
517 Global::applyStyle ( ); 554 Global::applyStyle ( );
518 555
519 QDialog::accept ( ); 556 QDialog::accept ( );
520} 557}
521 558
522void Appearance::done ( int r ) 559void Appearance::done ( int r )
523{ 560{
524 QDialog::done ( r ); 561 QDialog::done ( r );
525 close ( ); 562 close ( );
526} 563}
527 564
528 565
529void Appearance::styleClicked ( int index ) 566void Appearance::styleClicked ( int index )
530{ 567{
531 StyleListItem *sli = (StyleListItem *) m_style_list-> item ( index ); 568 StyleListItem *sli = (StyleListItem *) m_style_list-> item ( index );
532 m_style_settings-> setEnabled ( sli ? sli-> hasSettings ( ) : false ); 569 m_style_settings-> setEnabled ( sli ? sli-> hasSettings ( ) : false );
533 570
534 if ( m_sample && sli && sli-> style ( )) 571 if ( m_sample && sli && sli-> style ( ))
535 { 572 {
536 int ci = m_color_list ? m_color_list-> currentItem ( ) : -1; 573 int ci = m_color_list ? m_color_list-> currentItem ( ) : -1;
537 574
538 m_sample-> setStyle2 ( sli-> style ( ), ci < 0 ? palette ( ) : ((ColorListItem *) m_color_list-> item ( ci ))-> palette ( )); 575 m_sample-> setStyle2 ( sli-> style ( ), ci < 0 ? palette ( ) : ((ColorListItem *) m_color_list-> item ( ci ))-> palette ( ));
539 } 576 }
540 577
541 m_style_changed |= ( index != m_original_style ); 578 m_style_changed |= ( index != m_original_style );
542} 579}
543 580
544void Appearance::styleSettingsClicked ( ) 581void Appearance::styleSettingsClicked ( )
545{ 582{
546 StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( )); 583 StyleListItem *item = (StyleListItem *) m_style_list-> item ( m_style_list-> currentItem ( ));
547 584
548 if ( item && item-> hasSettings ( )) 585 if ( item && item-> hasSettings ( ))
549 { 586 {
550 QDialog *d = new QDialog ( this, "SETTINGS-DLG", true ); 587 QDialog *d = new QDialog ( this, "SETTINGS-DLG", true );
551 QVBoxLayout *vbox = new QVBoxLayout ( d, 3, 0 ); 588 QVBoxLayout *vbox = new QVBoxLayout ( d, 3, 0 );
552 589
553 QWidget *w = item-> settings ( d ); 590 QWidget *w = item-> settings ( d );
554 591
555 if ( w ) 592 if ( w )
556 { 593 {
557 vbox-> addWidget ( w ); 594 vbox-> addWidget ( w );
558 595
559 d-> setCaption ( w-> caption ( )); 596 d-> setCaption ( w-> caption ( ));
560 597
561 bool accepted = ( QPEApplication::execDialog ( d ) == QDialog::Accepted ); 598 bool accepted = ( QPEApplication::execDialog ( d ) == QDialog::Accepted );
562 599
563 if ( item-> setSettings ( accepted )) 600 if ( item-> setSettings ( accepted ))
564 m_style_changed = true; 601 m_style_changed = true;
565 } 602 }
566 delete d; 603 delete d;
567 } 604 }
568} 605}
569 606
570void Appearance::decoClicked ( int index ) 607void Appearance::decoClicked ( int index )
571{ 608{
572 DecoListItem *dli = (DecoListItem *) m_deco_list-> item ( index ); 609 DecoListItem *dli = (DecoListItem *) m_deco_list-> item ( index );
573 610
574 if ( m_sample ) 611 if ( m_sample )
575 { 612 {
576 if ( dli && dli-> interface ( )) 613 if ( dli && dli-> interface ( ))
577 m_sample-> setDecoration ( dli-> interface ( )); 614 m_sample-> setDecoration ( dli-> interface ( ));
578 else 615 else
579 m_sample-> setDecoration ( new DefaultWindowDecoration ( )); 616 m_sample-> setDecoration ( new DefaultWindowDecoration ( ));
580 m_sample-> repaint ( ); 617 m_sample-> repaint ( );
581 } 618 }
582 m_deco_changed |= ( index != m_original_deco ); 619 m_deco_changed |= ( index != m_original_deco );
583} 620}
584 621
585void Appearance::fontClicked ( const QFont &f ) 622void Appearance::fontClicked ( const QFont &f )
586{ 623{
587 m_font_changed |= ( f != m_sample-> font ( )); 624 m_font_changed |= ( f != m_sample-> font ( ));
588 m_sample-> setFont ( f ); 625 m_sample-> setFont ( f );
589} 626}
590 627
591void Appearance::colorClicked ( int index ) 628void Appearance::colorClicked ( int index )
592{ 629{
593 ColorListItem *item = (ColorListItem *) m_color_list-> item ( index ); 630 ColorListItem *item = (ColorListItem *) m_color_list-> item ( index );
594 631
595 if ( item ) 632 if ( item )
596 m_sample-> setPalette ( item-> palette ( )); 633 m_sample-> setPalette ( item-> palette ( ));
597 634
598 m_color_changed |= ( item-> palette ( ) != qApp-> palette ( )); 635 m_color_changed |= ( item-> palette ( ) != qApp-> palette ( ));
599} 636}
600 637
601 638
602void Appearance::editSchemeClicked ( ) 639void Appearance::editSchemeClicked ( )
603{ 640{
604 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( )); 641 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( ));
605 642
606 int cnt = 0; 643 int cnt = 0;
607 QString labels [QColorGroup::NColorRoles]; 644 QString labels [QColorGroup::NColorRoles];
608 QColor colors [QColorGroup::NColorRoles]; 645 QColor colors [QColorGroup::NColorRoles];
609 646
610 for ( int role = 0; role < (int) QColorGroup::NColorRoles; ++role ) 647 for ( int role = 0; role < (int) QColorGroup::NColorRoles; ++role )
611 { 648 {
612 QColor col = item->color( static_cast<QColorGroup::ColorRole>( role ) ); 649 QColor col = item->color( static_cast<QColorGroup::ColorRole>( role ) );
613 650
614 if ( col. isValid ( )) 651 if ( col. isValid ( ))
615 { 652 {
616 labels[cnt] = item->label( static_cast<QColorGroup::ColorRole>( role ) ); 653 labels[cnt] = item->label( static_cast<QColorGroup::ColorRole>( role ) );
617 colors[cnt] = col; 654 colors[cnt] = col;
618 655
619 cnt++; 656 cnt++;
620 } 657 }
621 } 658 }
622 659
623 EditScheme* editdlg = new EditScheme( cnt, labels, colors, this, "editScheme", true ); 660 EditScheme* editdlg = new EditScheme( cnt, labels, colors, this, "editScheme", true );
624 if ( QPEApplication::execDialog( editdlg ) == QDialog::Accepted ) 661 if ( QPEApplication::execDialog( editdlg ) == QDialog::Accepted )
625 { 662 {
626 ColorListItem *citem = (ColorListItem *) m_color_list-> item ( 0 ); 663 ColorListItem *citem = (ColorListItem *) m_color_list-> item ( 0 );
627 cnt = 0; 664 cnt = 0;
628 665
629 for ( int role = 0; role < (int) QColorGroup::NColorRoles; ++role ) 666 for ( int role = 0; role < (int) QColorGroup::NColorRoles; ++role )
630 { 667 {
631 if ( item->color( static_cast<QColorGroup::ColorRole>( role ) ).isValid() ) 668 if ( item->color( static_cast<QColorGroup::ColorRole>( role ) ).isValid() )
632 { 669 {
633 citem->setColor( static_cast<QColorGroup::ColorRole>( role ), colors[cnt] ); 670 citem->setColor( static_cast<QColorGroup::ColorRole>( role ), colors[cnt] );
634 cnt++; 671 cnt++;
635 } 672 }
636 } 673 }
637 674
638 m_color_list-> setCurrentItem ( 0 ); 675 m_color_list-> setCurrentItem ( 0 );
639 colorClicked ( 0 ); 676 colorClicked ( 0 );
640 677
641 m_color_changed = true; 678 m_color_changed = true;
642 } 679 }
643 delete editdlg; 680 delete editdlg;
644} 681}
645 682
646 683
647void Appearance::saveSchemeClicked() 684void Appearance::saveSchemeClicked()
648{ 685{
649 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( )); 686 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( ));
650 687
651 if ( !item ) 688 if ( !item )
652 return; 689 return;
653 690
654 QDialog *d = new QDialog ( this, 0, true ); 691 QDialog *d = new QDialog ( this, 0, true );
655 d-> setCaption ( tr( "Save Scheme" )); 692 d-> setCaption ( tr( "Save Scheme" ));
656 QLineEdit *ed = new QLineEdit ( d ); 693 QLineEdit *ed = new QLineEdit ( d );
657 ( new QVBoxLayout ( d, 3, 3 ))-> addWidget ( ed ); 694 ( new QVBoxLayout ( d, 3, 3 ))-> addWidget ( ed );
658 ed-> setFocus ( ); 695 ed-> setFocus ( );
659 696
660 if ( d-> exec ( ) == QDialog::Accepted ) 697 if ( d-> exec ( ) == QDialog::Accepted )
661 { 698 {
662 QString schemename = ed-> text ( ); 699 QString schemename = ed-> text ( );
663 QString filestr = QPEApplication::qpeDir(); 700 QString filestr = QPEApplication::qpeDir();
664 filestr.append( "/etc/colors/" ); 701 filestr.append( "/etc/colors/" );
665 filestr.append( schemename ); 702 filestr.append( schemename );
666 filestr.append( ".scheme" ); 703 filestr.append( ".scheme" );
667 QFile file ( filestr ); 704 QFile file ( filestr );
668 if ( !file. exists ( )) 705 if ( !file. exists ( ))
669 { 706 {
670 QPalette p = item-> palette ( ); 707 QPalette p = item-> palette ( );
671 708
672 Config config ( file.name(), Config::File ); 709 Config config ( file.name(), Config::File );
673 config. setGroup( "Colors" ); 710 config. setGroup( "Colors" );
674 711
675 item-> save ( config ); 712 item-> save ( config );
676 713
677 config. write ( ); // need to flush the config info first 714 config. write ( ); // need to flush the config info first
678 715
679 m_color_list-> insertItem ( new ColorListItem ( schemename, config )); 716 m_color_list-> insertItem ( new ColorListItem ( schemename, config ));
680 } 717 }
681 else 718 else
682 { 719 {
683 QMessageBox::information ( this, tr( "Save scheme" ), tr( "Scheme does already exist." )); 720 QMessageBox::information ( this, tr( "Save scheme" ), tr( "Scheme does already exist." ));
684 } 721 }
685 } 722 }
686 delete d; 723 delete d;
687} 724}
688 725
689void Appearance::deleteSchemeClicked() 726void Appearance::deleteSchemeClicked()
690{ 727{
691 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( )); 728 ColorListItem *item = (ColorListItem *) m_color_list-> item ( m_color_list-> currentItem ( ));
692 729
693 if ( !item ) 730 if ( !item )
694 return; 731 return;
695 732
696 if ( m_color_list-> currentItem ( ) > 0 ) 733 if ( m_color_list-> currentItem ( ) > 0 )
697 { 734 {
698 if ( QPEMessageBox::confirmDelete ( this, tr( "Delete scheme" ), item-> text ( ) ) ) 735 if ( QPEMessageBox::confirmDelete ( this, tr( "Delete scheme" ), item-> text ( ) ) )
699 { 736 {
700 QString filestr = QPEApplication::qpeDir ( ); 737 QString filestr = QPEApplication::qpeDir ( );
701 filestr.append( "/etc/colors/" ); 738 filestr.append( "/etc/colors/" );
702 filestr.append( item-> text ( ) ); 739 filestr.append( item-> text ( ) );
703 filestr.append( ".scheme" ); 740 filestr.append( ".scheme" );
704 QFile::remove ( filestr ); 741 QFile::remove ( filestr );
705 delete item; 742 delete item;
706 } 743 }
707 } 744 }
708 else 745 else
709 { 746 {
710 QMessageBox::information( this, tr( "Delete scheme" ), tr( "Unable to delete current scheme." )); 747 QMessageBox::information( this, tr( "Delete scheme" ), tr( "Unable to delete current scheme." ));
711 } 748 }
712} 749}
diff --git a/noncore/settings/appearance2/appearance.h b/noncore/settings/appearance2/appearance.h
index ef7e874..79e71eb 100644
--- a/noncore/settings/appearance2/appearance.h
+++ b/noncore/settings/appearance2/appearance.h
@@ -1,128 +1,133 @@
1/* 1/*
2                 This file is part of the Opie Project 2                 This file is part of the Opie Project
3 3
4 Copyright (c) 2002 Dan Williams <drw@handhelds.org> 4 Copyright (c) 2002 Dan Williams <drw@handhelds.org>
5 Copyright (c) 2002 Robert Griebl <sandman@handhelds.org> 5 Copyright (c) 2002 Robert Griebl <sandman@handhelds.org>
6 =. 6 =.
7 .=l. 7 .=l.
8           .>+-= 8           .>+-=
9 _;:,     .>    :=|. This program is free software; you can 9 _;:,     .>    :=|. This program is free software; you can
10.> <`_,   >  .   <= redistribute it and/or modify it under 10.> <`_,   >  .   <= redistribute it and/or modify it under
11:`=1 )Y*s>-.--   : the terms of the GNU Library General Public 11:`=1 )Y*s>-.--   : the terms of the GNU Library General Public
12.="- .-=="i,     .._ License as published by the Free Software 12.="- .-=="i,     .._ License as published by the Free Software
13 - .   .-<_>     .<> Foundation; either version 2 of the License, 13 - .   .-<_>     .<> Foundation; either version 2 of the License,
14     ._= =}       : or (at your option) any later version. 14     ._= =}       : or (at your option) any later version.
15    .%`+i>       _;_. 15    .%`+i>       _;_.
16    .i_,=:_.      -<s. This program is distributed in the hope that 16    .i_,=:_.      -<s. This program is distributed in the hope that
17     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY; 17     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
18 : ..    .:,     . . . without even the implied warranty of 18 : ..    .:,     . . . without even the implied warranty of
19    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A 19    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
20  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU 20  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU
21..}^=.=       =       ; Library General Public License for more 21..}^=.=       =       ; Library General Public License for more
22++=   -.     .`     .: details. 22++=   -.     .`     .: details.
23:     =  ...= . :.=- 23:     =  ...= . :.=-
24 -.   .:....=;==+<; You should have received a copy of the GNU 24 -.   .:....=;==+<; You should have received a copy of the GNU
25  -_. . .   )=.  = Library General Public License along with 25  -_. . .   )=.  = Library General Public License along with
26    --        :-=` this library; see the file COPYING.LIB. 26    --        :-=` this library; see the file COPYING.LIB.
27 If not, write to the Free Software Foundation, 27 If not, write to the Free Software Foundation,
28 Inc., 59 Temple Place - Suite 330, 28 Inc., 59 Temple Place - Suite 330,
29 Boston, MA 02111-1307, USA. 29 Boston, MA 02111-1307, USA.
30*/ 30*/
31 31
32#ifndef APPEARANCESETTINGS_H 32#ifndef APPEARANCESETTINGS_H
33#define APPEARANCESETTINGS_H 33#define APPEARANCESETTINGS_H
34 34
35#include <opie2/ofontselector.h> 35#include <opie2/ofontselector.h>
36 36
37#include <qpe/fontdatabase.h> 37#include <qpe/fontdatabase.h>
38 38
39#include <qdialog.h> 39#include <qdialog.h>
40#include <qspinbox.h>
40 41
41using Opie::Ui::OFontSelector; 42using Opie::Ui::OFontSelector;
42 43
43class QCheckBox; 44class QCheckBox;
44class QComboBox; 45class QComboBox;
45class QLabel; 46class QLabel;
46class QLineEdit; 47class QLineEdit;
47class QListBox; 48class QListBox;
48class QMultiLineEdit; 49class QMultiLineEdit;
49class QPushButton; 50class QPushButton;
50class QRadioButton; 51class QRadioButton;
51class QToolButton; 52class QToolButton;
52class SampleWindow; 53class SampleWindow;
53namespace Opie {namespace Ui {class OFontSelector;}} 54namespace Opie {namespace Ui {class OFontSelector;}}
54class QListView; 55class QListView;
55class QListViewItem; 56class QListViewItem;
56class Config; 57class Config;
57 58
58class Appearance : public QDialog 59class Appearance : public QDialog
59{ 60{
60 Q_OBJECT 61 Q_OBJECT
61 62
62public: 63public:
63 Appearance( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); 64 Appearance( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
64 ~Appearance(); 65 ~Appearance();
65 static QString appName() { return QString::fromLatin1("appearance"); } 66 static QString appName() { return QString::fromLatin1("appearance"); }
66 67
67protected: 68protected:
68 virtual void accept ( ); 69 virtual void accept ( );
69 virtual void done ( int r ); 70 virtual void done ( int r );
70 71
71protected slots: 72protected slots:
72 void styleClicked ( int ); 73 void styleClicked ( int );
73 void styleSettingsClicked ( ); 74 void styleSettingsClicked ( );
74 void decoClicked ( int ); 75 void decoClicked ( int );
75 void fontClicked ( const QFont & ); 76 void fontClicked ( const QFont & );
76 void colorClicked ( int ); 77 void colorClicked ( int );
77 78
78 void editSchemeClicked(); 79 void editSchemeClicked();
79 void saveSchemeClicked(); 80 void saveSchemeClicked();
80 void deleteSchemeClicked(); 81 void deleteSchemeClicked();
81 82
82 void tabChanged ( QWidget * ); 83 void tabChanged ( QWidget * );
83 84
84private: 85private:
85 void changeText(); 86 void changeText();
86 87
87 QWidget *createStyleTab ( QWidget *parent, Config &cfg ); 88 QWidget *createStyleTab ( QWidget *parent, Config &cfg );
88 QWidget *createDecoTab ( QWidget *parent, Config &cfg ); 89 QWidget *createDecoTab ( QWidget *parent, Config &cfg );
89 QWidget *createFontTab ( QWidget *parent, Config &cfg ); 90 QWidget *createFontTab ( QWidget *parent, Config &cfg );
90 QWidget *createColorTab ( QWidget *parent, Config &cfg ); 91 QWidget *createColorTab ( QWidget *parent, Config &cfg );
91 QWidget *createAdvancedTab ( QWidget *parent, Config &cfg ); 92 QWidget *createAdvancedTab ( QWidget *parent, Config &cfg );
92 93
93private: 94private:
94 bool m_style_changed; 95 bool m_style_changed;
95 bool m_font_changed; 96 bool m_font_changed;
96 bool m_scheme_changed; 97 bool m_scheme_changed;
97 bool m_deco_changed; 98 bool m_deco_changed;
98 bool m_color_changed; 99 bool m_color_changed;
99 100
100 int m_original_style; 101 int m_original_style;
101 int m_original_deco; 102 int m_original_deco;
102 int m_original_tabstyle; 103 int m_original_tabstyle;
103 bool m_original_tabpos; 104 bool m_original_tabpos;
104 105
105 QListBox * m_style_list; 106 QListBox * m_style_list;
106 QPushButton * m_style_settings; 107 QPushButton * m_style_settings;
107 108
108 QListBox * m_deco_list; 109 QListBox * m_deco_list;
109 110
110 QListBox * m_color_list; 111 QListBox * m_color_list;
111 112
112 Opie::Ui::OFontSelector *m_fontselect; 113 Opie::Ui::OFontSelector *m_fontselect;
113 114
114 SampleWindow *m_sample; 115 SampleWindow *m_sample;
115 116
116 QComboBox * m_tabstyle_list; 117 QComboBox * m_tabstyle_list;
117 QRadioButton *m_tabstyle_top; 118 QRadioButton *m_tabstyle_top;
118 QRadioButton *m_tabstyle_bottom; 119 QRadioButton *m_tabstyle_bottom;
119 120
120 QRadioButton *m_rotdir_cw; 121 QRadioButton *m_rotdir_cw;
121 QRadioButton *m_rotdir_ccw; 122 QRadioButton *m_rotdir_ccw;
122 QRadioButton *m_rotdir_flip; 123 QRadioButton *m_rotdir_flip;
123 124
124 QWidget * m_advtab; 125 QWidget * m_advtab;
125 QCheckBox *m_leftHand; 126 QCheckBox *m_leftHand;
127
128 QSpinBox*m_bigIconSize;
129 QSpinBox*m_smallIconSize;
130 QCheckBox*m_useBigPixmaps;
126}; 131};
127 132
128#endif 133#endif