author | zecke <zecke> | 2005-02-08 22:59:18 (UTC) |
---|---|---|
committer | zecke <zecke> | 2005-02-08 22:59:18 (UTC) |
commit | f24d8318de30b47ec8f877293fd175deaa0b914c (patch) (unidiff) | |
tree | 980c18e803b7b85573e1ab11a9ade2b281273d3e | |
parent | 7cff42233a2e0e2761f54fea89db785c7b519c94 (diff) | |
download | opie-f24d8318de30b47ec8f877293fd175deaa0b914c.zip opie-f24d8318de30b47ec8f877293fd175deaa0b914c.tar.gz opie-f24d8318de30b47ec8f877293fd175deaa0b914c.tar.bz2 |
-Kill the need to compile Opie against a patched version of Qt/E
Remove the setStyle and setFont overrides
as a result remove settings from the buildsystem and the Apperance GUI
We do this as we won't run NeoCal or TKC Apps on a GCC3 (now default compiler)
libqpe, to run these applications one can use oz-compat
-rw-r--r-- | Rules.make | 6 | ||||
-rw-r--r-- | config.in | 8 | ||||
-rw-r--r-- | library/library.pro | 6 | ||||
-rw-r--r-- | library/qpeapplication.cpp | 40 | ||||
-rw-r--r-- | library/qpeapplication.h | 5 | ||||
-rw-r--r-- | library/qt_override.cpp | 170 | ||||
-rw-r--r-- | library/qt_override_p.h | 25 | ||||
-rw-r--r-- | noncore/settings/appearance2/appearance.cpp | 210 | ||||
-rw-r--r-- | noncore/settings/appearance2/appearance.h | 8 |
9 files changed, 5 insertions, 473 deletions
@@ -41,44 +41,38 @@ ifneq ($(CONFIG_QUICK_LAUNCH),) | |||
41 | echo CONFIG -= staticlib >> $@ | 41 | echo CONFIG -= staticlib >> $@ |
42 | echo CONFIG -= quick-app >> $@ | 42 | echo CONFIG -= quick-app >> $@ |
43 | echo CONFIG += quick-app-lib >> $@ | 43 | echo CONFIG += quick-app-lib >> $@ |
44 | echo QUICKLAUNCH_PATH = $(CONFIG_QUICKLAUNCH_PATH) >> $@ | 44 | echo QUICKLAUNCH_PATH = $(CONFIG_QUICKLAUNCH_PATH) >> $@ |
45 | echo \} >> $@ | 45 | echo \} >> $@ |
46 | else | 46 | else |
47 | echo contains\( CONFIG, quick-app \) \{ >> $@ | 47 | echo contains\( CONFIG, quick-app \) \{ >> $@ |
48 | echo CONFIG -= quick-app >> $@ | 48 | echo CONFIG -= quick-app >> $@ |
49 | echo CONFIG += quick-app-bin >> $@ | 49 | echo CONFIG += quick-app-bin >> $@ |
50 | echo \} >> $@ | 50 | echo \} >> $@ |
51 | endif | 51 | endif |
52 | ifeq ($(CONFIG_SQL_PIM_BACKEND),y) | 52 | ifeq ($(CONFIG_SQL_PIM_BACKEND),y) |
53 | echo ENABLE_SQL_PIM_BACKEND=$(CONFIG_SQL_PIM_BACKEND) >> $@ | 53 | echo ENABLE_SQL_PIM_BACKEND=$(CONFIG_SQL_PIM_BACKEND) >> $@ |
54 | else | 54 | else |
55 | echo ENABLE_SQL_PIM_BACKEND=n >> $@ | 55 | echo ENABLE_SQL_PIM_BACKEND=n >> $@ |
56 | endif | 56 | endif |
57 | ifeq ($(CONFIG_OPIE_NO_OVERRIDE_QT),y) | ||
58 | echo CONFIG += no-override >> $@ | ||
59 | endif | ||
60 | ifeq ($(CONFIG_OPIELOGIN_USEPAM),y) | 57 | ifeq ($(CONFIG_OPIELOGIN_USEPAM),y) |
61 | echo CONFIG += OPIELOGIN_USEPAM >> $@ | 58 | echo CONFIG += OPIELOGIN_USEPAM >> $@ |
62 | endif | 59 | endif |
63 | ifeq ($(CONFIG_LIBQPE_WITHROHFEEDBACK),y) | 60 | ifeq ($(CONFIG_LIBQPE_WITHROHFEEDBACK),y) |
64 | echo CONFIG += LIBQPE_WITHROHFEEDBACK >> $@ | 61 | echo CONFIG += LIBQPE_WITHROHFEEDBACK >> $@ |
65 | endif | 62 | endif |
66 | ifeq ($(CONFIG_OPIE_NO_ERASERECT_FIX),y) | ||
67 | echo DEFINES += OPIE_NO_ERASE_RECT_HACKFIX >> $@ | ||
68 | endif | ||
69 | ifeq ($(CONFIG_OPIE_NO_BUILTIN_SHUTDOWN),y) | 63 | ifeq ($(CONFIG_OPIE_NO_BUILTIN_SHUTDOWN),y) |
70 | echo DEFINES += OPIE_NO_BUILTIN_SHUTDOWN >> $@ | 64 | echo DEFINES += OPIE_NO_BUILTIN_SHUTDOWN >> $@ |
71 | endif | 65 | endif |
72 | ifeq ($(CONFIG_OPIE_NO_BUILTIN_CALIBRATE),y) | 66 | ifeq ($(CONFIG_OPIE_NO_BUILTIN_CALIBRATE),y) |
73 | echo DEFINES += OPIE_NO_BUILTIN_CALIBRATE >> $@ | 67 | echo DEFINES += OPIE_NO_BUILTIN_CALIBRATE >> $@ |
74 | endif | 68 | endif |
75 | ifeq ($(CONFIG_USE_REALTIME_AUDIO_THREAD),y) | 69 | ifeq ($(CONFIG_USE_REALTIME_AUDIO_THREAD),y) |
76 | echo DEFINES += USE_REALTIME_AUDIO_THREAD >> $@ | 70 | echo DEFINES += USE_REALTIME_AUDIO_THREAD >> $@ |
77 | endif | 71 | endif |
78 | ifeq ($(CONFIG_USE_FILE_NOTIFICATION),y) | 72 | ifeq ($(CONFIG_USE_FILE_NOTIFICATION),y) |
79 | echo DEFINES += USE_FILE_NOTIFICATION >> $@ | 73 | echo DEFINES += USE_FILE_NOTIFICATION >> $@ |
80 | endif | 74 | endif |
81 | ifeq ($(CONFIG_QT_QWS_ALLOW_CLOCK),y) | 75 | ifeq ($(CONFIG_QT_QWS_ALLOW_CLOCK),y) |
82 | echo DEFINES += QT_QWS_ALLOW_OVERCLOCK >> $@ | 76 | echo DEFINES += QT_QWS_ALLOW_OVERCLOCK >> $@ |
83 | endif | 77 | endif |
84 | ifeq ($(CONFIG_OPIE_NEW_ALLOC),y) | 78 | ifeq ($(CONFIG_OPIE_NEW_ALLOC),y) |
@@ -110,40 +110,32 @@ config OPTIMIZATIONS | |||
110 | default "-march=armv4 -mtune=strongarm1100 -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_SHARP | 110 | default "-march=armv4 -mtune=strongarm1100 -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_SHARP |
111 | default "-march=armv4 -mtune=strongarm1100 -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_RAMSES | 111 | default "-march=armv4 -mtune=strongarm1100 -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_RAMSES |
112 | default "-march=armv4 -mtune=strongarm1100 -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_SIMPAD | 112 | default "-march=armv4 -mtune=strongarm1100 -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_SIMPAD |
113 | default "-march=armv5te -mtune=xscale -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_C700 | 113 | default "-march=armv5te -mtune=xscale -mapcs-32 -fexpensive-optimizations -fomit-frame-pointer -O2" if TARGET_C700 |
114 | 114 | ||
115 | config EXPERIMENTAL | 115 | config EXPERIMENTAL |
116 | bool "Prompt for development and/or incomplete items" | 116 | bool "Prompt for development and/or incomplete items" |
117 | default y | 117 | default y |
118 | 118 | ||
119 | config USE_CCACHE | 119 | config USE_CCACHE |
120 | bool "Use ccache, if available?" | 120 | bool "Use ccache, if available?" |
121 | default y | 121 | default y |
122 | 122 | ||
123 | endmenu | 123 | endmenu |
124 | 124 | ||
125 | menu "Configuration" | 125 | menu "Configuration" |
126 | config OPIE_NO_OVERRIDE_QT | ||
127 | boolean "Build Opie against an unpatched version of Qt" | ||
128 | default n | ||
129 | |||
130 | config OPIE_NO_ERASERECT_FIX | ||
131 | boolean "Disable Fixup eraseRect for HancomMobileWord,neocal.. to make libopiecore work on Sharps libqpe" | ||
132 | default n | ||
133 | |||
134 | config OPIE_NO_BUILTIN_SHUTDOWN | 126 | config OPIE_NO_BUILTIN_SHUTDOWN |
135 | boolean "Disable the built in shutdown application" | 127 | boolean "Disable the built in shutdown application" |
136 | default y | 128 | default y |
137 | 129 | ||
138 | config OPIE_NO_BUILTIN_CALIBRATE | 130 | config OPIE_NO_BUILTIN_CALIBRATE |
139 | boolean "Disable the built in calibrate application" | 131 | boolean "Disable the built in calibrate application" |
140 | default y if TARGET_YOPY | 132 | default y if TARGET_YOPY |
141 | default n if ! TARGET_YOPY | 133 | default n if ! TARGET_YOPY |
142 | 134 | ||
143 | config OPIE_SOUND_FRAGMENT_SHIFT | 135 | config OPIE_SOUND_FRAGMENT_SHIFT |
144 | string "The sound fragment used in Opie Player I" | 136 | string "The sound fragment used in Opie Player I" |
145 | default "14" if TARGET_IPAQ | 137 | default "14" if TARGET_IPAQ |
146 | default "16" if ! TARGET_IPAQ | 138 | default "16" if ! TARGET_IPAQ |
147 | 139 | ||
148 | config USE_REALTIME_AUDIO_THREAD | 140 | config USE_REALTIME_AUDIO_THREAD |
149 | boolean "Use a realtime thread in Opie Player I" | 141 | boolean "Use a realtime thread in Opie Player I" |
diff --git a/library/library.pro b/library/library.pro index 04e125f..95c18a2 100644 --- a/library/library.pro +++ b/library/library.pro | |||
@@ -46,33 +46,32 @@ HEADERS = calendar.h \ | |||
46 | backend/palmtoprecord.h \ | 46 | backend/palmtoprecord.h \ |
47 | backend/task.h \ | 47 | backend/task.h \ |
48 | backend/event.h \ | 48 | backend/event.h \ |
49 | backend/contact.h\ | 49 | backend/contact.h\ |
50 | categorymenu.h \ | 50 | categorymenu.h \ |
51 | categoryedit_p.h \ | 51 | categoryedit_p.h \ |
52 | categoryselect.h \ | 52 | categoryselect.h \ |
53 | categorywidget.h \ | 53 | categorywidget.h \ |
54 | ir.h \ | 54 | ir.h \ |
55 | backend/vobject_p.h \ | 55 | backend/vobject_p.h \ |
56 | findwidget_p.h \ | 56 | findwidget_p.h \ |
57 | finddialog.h \ | 57 | finddialog.h \ |
58 | lnkproperties.h \ | 58 | lnkproperties.h \ |
59 | windowdecorationinterface.h \ | 59 | windowdecorationinterface.h \ |
60 | textcodecinterface.h \ | 60 | textcodecinterface.h \ |
61 | imagecodecinterface.h \ | 61 | imagecodecinterface.h \ |
62 | qt_override_p.h \ | ||
63 | qpeglobal.h | 62 | qpeglobal.h |
64 | 63 | ||
65 | SOURCES= calendar.cpp \ | 64 | SOURCES= calendar.cpp \ |
66 | global.cpp \ | 65 | global.cpp \ |
67 | xmlreader.cpp \ | 66 | xmlreader.cpp \ |
68 | mimetype.cpp \ | 67 | mimetype.cpp \ |
69 | menubutton.cpp \ | 68 | menubutton.cpp \ |
70 | network.cpp \ | 69 | network.cpp \ |
71 | networkinterface.cpp \ | 70 | networkinterface.cpp \ |
72 | filemanager.cpp \ | 71 | filemanager.cpp \ |
73 | fontmanager.cpp \ | 72 | fontmanager.cpp \ |
74 | qdawg.cpp \ | 73 | qdawg.cpp \ |
75 | datebookmonth.cpp \ | 74 | datebookmonth.cpp \ |
76 | fileselector.cpp \ | 75 | fileselector.cpp \ |
77 | imageedit.cpp \ | 76 | imageedit.cpp \ |
78 | resource.cpp \ | 77 | resource.cpp \ |
@@ -104,42 +103,37 @@ SOURCES = calendar.cpp \ | |||
104 | backend/categories.cpp \ | 103 | backend/categories.cpp \ |
105 | backend/stringutil.cpp \ | 104 | backend/stringutil.cpp \ |
106 | backend/palmtoprecord.cpp \ | 105 | backend/palmtoprecord.cpp \ |
107 | backend/task.cpp \ | 106 | backend/task.cpp \ |
108 | backend/event.cpp \ | 107 | backend/event.cpp \ |
109 | backend/contact.cpp \ | 108 | backend/contact.cpp \ |
110 | categorymenu.cpp \ | 109 | categorymenu.cpp \ |
111 | categoryedit_p.cpp \ | 110 | categoryedit_p.cpp \ |
112 | categoryselect.cpp \ | 111 | categoryselect.cpp \ |
113 | categorywidget.cpp \ | 112 | categorywidget.cpp \ |
114 | ir.cpp \ | 113 | ir.cpp \ |
115 | backend/vcc_yacc.cpp \ | 114 | backend/vcc_yacc.cpp \ |
116 | backend/vobject.cpp \ | 115 | backend/vobject.cpp \ |
117 | findwidget_p.cpp \ | 116 | findwidget_p.cpp \ |
118 | finddialog.cpp \ | 117 | finddialog.cpp \ |
119 | lnkproperties.cpp \ | 118 | lnkproperties.cpp \ |
120 | qt_override.cpp \ | ||
121 | widget_showing.cpp | 119 | widget_showing.cpp |
122 | 120 | ||
123 | 121 | ||
124 | 122 | ||
125 | # Qt 3 compatibility | 123 | # Qt 3 compatibility |
126 | HEADERS += quuid.h qcom.h qlibrary.h qlibrary_p.h | 124 | HEADERS += quuid.h qcom.h qlibrary.h qlibrary_p.h |
127 | SOURCES += quuid.cpp qlibrary.cpp qlibrary_unix.cpp | 125 | SOURCES += quuid.cpp qlibrary.cpp qlibrary_unix.cpp |
128 | INCLUDEPATH += $(OPIEDIR)/include backend | 126 | INCLUDEPATH += $(OPIEDIR)/include backend |
129 | LIBS += -ldl -lcrypt -lm | 127 | LIBS += -ldl -lcrypt -lm |
130 | INTERFACES = passwordbase_p.ui categoryeditbase_p.ui findwidgetbase_p.ui lnkpropertiesbase_p.ui | 128 | INTERFACES = passwordbase_p.ui categoryeditbase_p.ui findwidgetbase_p.ui lnkpropertiesbase_p.ui |
131 | TARGET = qpe | 129 | TARGET = qpe |
132 | DESTDIR = $(OPIEDIR)/lib$(PROJMAK) | 130 | DESTDIR = $(OPIEDIR)/lib$(PROJMAK) |
133 | VERSION = 1.5.0.1 | 131 | VERSION = 1.5.0.1 |
134 | 132 | ||
135 | include( $(OPIEDIR)/include.pro ) | 133 | include( $(OPIEDIR)/include.pro ) |
136 | 134 | ||
137 | contains( CONFIG, no-override ){ | ||
138 | DEFINES += OPIE_NO_OVERRIDE_QT | ||
139 | } | ||
140 | |||
141 | contains( CONFIG, LIBQPE_WITHROHFEEDBACK ){ | 135 | contains( CONFIG, LIBQPE_WITHROHFEEDBACK ){ |
142 | DEFINES += OPIE_WITHROHFEEDBACK | 136 | DEFINES += OPIE_WITHROHFEEDBACK |
143 | SOURCES += backend/rohfeedback.cpp | 137 | SOURCES += backend/rohfeedback.cpp |
144 | HEADERS += backend/rohfeedback.h | 138 | HEADERS += backend/rohfeedback.h |
145 | } | 139 | } |
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp index 1c5ced3..2bd7cbe 100644 --- a/library/qpeapplication.cpp +++ b/library/qpeapplication.cpp | |||
@@ -83,33 +83,32 @@ | |||
83 | #include "fontdatabase.h" | 83 | #include "fontdatabase.h" |
84 | #endif | 84 | #endif |
85 | 85 | ||
86 | #include "alarmserver.h" | 86 | #include "alarmserver.h" |
87 | #include "applnk.h" | 87 | #include "applnk.h" |
88 | #include "qpemenubar.h" | 88 | #include "qpemenubar.h" |
89 | #include "textcodecinterface.h" | 89 | #include "textcodecinterface.h" |
90 | #include "imagecodecinterface.h" | 90 | #include "imagecodecinterface.h" |
91 | #include <qtopia/qpeglobal.h> | 91 | #include <qtopia/qpeglobal.h> |
92 | 92 | ||
93 | #include <unistd.h> | 93 | #include <unistd.h> |
94 | #include <sys/file.h> | 94 | #include <sys/file.h> |
95 | #include <sys/ioctl.h> | 95 | #include <sys/ioctl.h> |
96 | #ifndef QT_NO_SOUND | 96 | #ifndef QT_NO_SOUND |
97 | #include <sys/soundcard.h> | 97 | #include <sys/soundcard.h> |
98 | #endif | 98 | #endif |
99 | #include "qt_override_p.h" | ||
100 | 99 | ||
101 | #include <backend/rohfeedback.h> | 100 | #include <backend/rohfeedback.h> |
102 | 101 | ||
103 | 102 | ||
104 | static bool useBigPixmaps = 0; | 103 | static bool useBigPixmaps = 0; |
105 | 104 | ||
106 | class HackWidget : public QWidget | 105 | class HackWidget : public QWidget |
107 | { | 106 | { |
108 | public: | 107 | public: |
109 | bool needsOk() | 108 | bool needsOk() |
110 | { return (getWState() & WState_Reserved1 ); } | 109 | { return (getWState() & WState_Reserved1 ); } |
111 | 110 | ||
112 | QRect normalGeometry() | 111 | QRect normalGeometry() |
113 | { return topData()->normalGeometry; }; | 112 | { return topData()->normalGeometry; }; |
114 | }; | 113 | }; |
115 | 114 | ||
@@ -1339,114 +1338,75 @@ void QPEApplication::reset() { | |||
1339 | 1338 | ||
1340 | #if (QT_VERSION < 238) && defined Q_OS_MACX | 1339 | #if (QT_VERSION < 238) && defined Q_OS_MACX |
1341 | bool qt_left_hand_scrollbars = false; | 1340 | bool qt_left_hand_scrollbars = false; |
1342 | #else | 1341 | #else |
1343 | extern bool qt_left_hand_scrollbars QPE_WEAK_SYMBOL; | 1342 | extern bool qt_left_hand_scrollbars QPE_WEAK_SYMBOL; |
1344 | #endif | 1343 | #endif |
1345 | 1344 | ||
1346 | /*! | 1345 | /*! |
1347 | \internal | 1346 | \internal |
1348 | */ | 1347 | */ |
1349 | void QPEApplication::applyStyle() | 1348 | void QPEApplication::applyStyle() |
1350 | { | 1349 | { |
1351 | Config config( "qpe" ); | 1350 | Config config( "qpe" ); |
1352 | config.setGroup( "Appearance" ); | 1351 | config.setGroup( "Appearance" ); |
1353 | 1352 | ||
1354 | #if QT_VERSION > 233 | 1353 | #if QT_VERSION > 233 |
1355 | #if !defined(OPIE_NO_OVERRIDE_QT) | ||
1356 | // don't block ourselves ... | ||
1357 | Opie::force_appearance = 0; | ||
1358 | |||
1359 | static QString appname = Opie::binaryName ( ); | ||
1360 | |||
1361 | QStringList ex = config. readListEntry ( "NoStyle", ';' ); | ||
1362 | int nostyle = 0; | ||
1363 | for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) { | ||
1364 | if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) { | ||
1365 | nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 ); | ||
1366 | break; | ||
1367 | } | ||
1368 | } | ||
1369 | #else | ||
1370 | int nostyle = 0; | ||
1371 | #endif | ||
1372 | |||
1373 | // Widget style | 1354 | // Widget style |
1374 | QString style = config.readEntry( "Style", "FlatStyle" ); | 1355 | QString style = config.readEntry( "Style", "FlatStyle" ); |
1375 | 1356 | ||
1376 | // don't set a custom style | ||
1377 | if ( nostyle & Opie::Force_Style ) | ||
1378 | style = "FlatStyle"; | ||
1379 | |||
1380 | internalSetStyle ( style ); | 1357 | internalSetStyle ( style ); |
1381 | 1358 | ||
1382 | // Colors - from /etc/colors/Liquid.scheme | 1359 | // Colors - from /etc/colors/Liquid.scheme |
1383 | QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) ); | 1360 | QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) ); |
1384 | QColor btncolor( config.readEntry( "Button", "#96c8fa" ) ); | 1361 | QColor btncolor( config.readEntry( "Button", "#96c8fa" ) ); |
1385 | QPalette pal( btncolor, bgcolor ); | 1362 | QPalette pal( btncolor, bgcolor ); |
1386 | QString color = config.readEntry( "Highlight", "#73adef" ); | 1363 | QString color = config.readEntry( "Highlight", "#73adef" ); |
1387 | pal.setColor( QColorGroup::Highlight, QColor( color ) ); | 1364 | pal.setColor( QColorGroup::Highlight, QColor( color ) ); |
1388 | color = config.readEntry( "HighlightedText", "#FFFFFF" ); | 1365 | color = config.readEntry( "HighlightedText", "#FFFFFF" ); |
1389 | pal.setColor( QColorGroup::HighlightedText, QColor( color ) ); | 1366 | pal.setColor( QColorGroup::HighlightedText, QColor( color ) ); |
1390 | color = config.readEntry( "Text", "#000000" ); | 1367 | color = config.readEntry( "Text", "#000000" ); |
1391 | pal.setColor( QColorGroup::Text, QColor( color ) ); | 1368 | pal.setColor( QColorGroup::Text, QColor( color ) ); |
1392 | color = config.readEntry( "ButtonText", "#000000" ); | 1369 | color = config.readEntry( "ButtonText", "#000000" ); |
1393 | pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) ); | 1370 | pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) ); |
1394 | color = config.readEntry( "Base", "#FFFFFF" ); | 1371 | color = config.readEntry( "Base", "#FFFFFF" ); |
1395 | pal.setColor( QColorGroup::Base, QColor( color ) ); | 1372 | pal.setColor( QColorGroup::Base, QColor( color ) ); |
1396 | 1373 | ||
1397 | pal.setColor( QPalette::Disabled, QColorGroup::Text, | 1374 | pal.setColor( QPalette::Disabled, QColorGroup::Text, |
1398 | pal.color( QPalette::Active, QColorGroup::Background ).dark() ); | 1375 | pal.color( QPalette::Active, QColorGroup::Background ).dark() ); |
1399 | 1376 | ||
1400 | setPalette( pal, TRUE ); | 1377 | setPalette( pal, TRUE ); |
1401 | 1378 | ||
1402 | 1379 | ||
1403 | // Set the ScrollBar on the 'right' side but only if the weak symbol is present | 1380 | // Set the ScrollBar on the 'right' side but only if the weak symbol is present |
1404 | if (&qt_left_hand_scrollbars ) | 1381 | if (&qt_left_hand_scrollbars ) |
1405 | qt_left_hand_scrollbars = config.readBoolEntry( "LeftHand", false ); | 1382 | qt_left_hand_scrollbars = config.readBoolEntry( "LeftHand", false ); |
1406 | 1383 | ||
1407 | // Window Decoration | 1384 | // Window Decoration |
1408 | QString dec = config.readEntry( "Decoration", "Flat" ); | 1385 | QString dec = config.readEntry( "Decoration", "Flat" ); |
1409 | 1386 | ||
1410 | // don't set a custom deco | ||
1411 | if ( nostyle & Opie::Force_Decoration ) | ||
1412 | dec = ""; | ||
1413 | |||
1414 | |||
1415 | if ( dec != d->decorationName ) { | 1387 | if ( dec != d->decorationName ) { |
1416 | qwsSetDecoration( new QPEDecoration( dec ) ); | 1388 | qwsSetDecoration( new QPEDecoration( dec ) ); |
1417 | d->decorationName = dec; | 1389 | d->decorationName = dec; |
1418 | } | 1390 | } |
1419 | 1391 | ||
1420 | // Font | 1392 | // Font |
1421 | QString ff = config.readEntry( "FontFamily", font().family() ); | 1393 | QString ff = config.readEntry( "FontFamily", font().family() ); |
1422 | int fs = config.readNumEntry( "FontSize", font().pointSize() ); | 1394 | int fs = config.readNumEntry( "FontSize", font().pointSize() ); |
1423 | 1395 | ||
1424 | // don't set a custom font | ||
1425 | if ( nostyle & Opie::Force_Font ) { | ||
1426 | ff = "Vera"; | ||
1427 | fs = 10; | ||
1428 | } | ||
1429 | |||
1430 | setFont ( QFont ( ff, fs ), true ); | 1396 | setFont ( QFont ( ff, fs ), true ); |
1431 | |||
1432 | #if !defined(OPIE_NO_OVERRIDE_QT) | ||
1433 | // revert to global blocking policy ... | ||
1434 | Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None; | ||
1435 | Opie::force_appearance &= ~nostyle; | ||
1436 | #endif | ||
1437 | #endif | 1397 | #endif |
1438 | } | 1398 | } |
1439 | 1399 | ||
1440 | void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data ) | 1400 | void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data ) |
1441 | { | 1401 | { |
1442 | #ifdef Q_WS_QWS | 1402 | #ifdef Q_WS_QWS |
1443 | QDataStream stream( data, IO_ReadOnly ); | 1403 | QDataStream stream( data, IO_ReadOnly ); |
1444 | if ( msg == "applyStyle()" ) { | 1404 | if ( msg == "applyStyle()" ) { |
1445 | applyStyle(); | 1405 | applyStyle(); |
1446 | } | 1406 | } |
1447 | else if ( msg == "toggleApplicationMenu()" ) { | 1407 | else if ( msg == "toggleApplicationMenu()" ) { |
1448 | QWidget *active = activeWindow ( ); | 1408 | QWidget *active = activeWindow ( ); |
1449 | 1409 | ||
1450 | if ( active ) { | 1410 | if ( active ) { |
1451 | QPEMenuToolFocusManager *man = QPEMenuToolFocusManager::manager ( ); | 1411 | QPEMenuToolFocusManager *man = QPEMenuToolFocusManager::manager ( ); |
1452 | bool oldactive = man-> isActive ( ); | 1412 | bool oldactive = man-> isActive ( ); |
diff --git a/library/qpeapplication.h b/library/qpeapplication.h index 849d5b3..167fe69 100644 --- a/library/qpeapplication.h +++ b/library/qpeapplication.h | |||
@@ -153,37 +153,32 @@ signals: | |||
153 | private slots: | 153 | private slots: |
154 | void systemMessage( const QCString &msg, const QByteArray &data ); | 154 | void systemMessage( const QCString &msg, const QByteArray &data ); |
155 | void pidMessage( const QCString &msg, const QByteArray &data ); | 155 | void pidMessage( const QCString &msg, const QByteArray &data ); |
156 | void removeSenderFromStylusDict(); | 156 | void removeSenderFromStylusDict(); |
157 | void hideOrQuit(); | 157 | void hideOrQuit(); |
158 | 158 | ||
159 | protected: | 159 | protected: |
160 | bool qwsEventFilter( QWSEvent * ); | 160 | bool qwsEventFilter( QWSEvent * ); |
161 | void internalSetStyle( const QString &style ); | 161 | void internalSetStyle( const QString &style ); |
162 | void prepareForTermination(bool willrestart); | 162 | void prepareForTermination(bool willrestart); |
163 | virtual void restart(); | 163 | virtual void restart(); |
164 | virtual void shutdown(); | 164 | virtual void shutdown(); |
165 | bool eventFilter( QObject *, QEvent * ); | 165 | bool eventFilter( QObject *, QEvent * ); |
166 | void timerEvent( QTimerEvent * ); | 166 | void timerEvent( QTimerEvent * ); |
167 | bool raiseAppropriateWindow(); | 167 | bool raiseAppropriateWindow(); |
168 | virtual void tryQuit(); | 168 | virtual void tryQuit(); |
169 | #ifndef OPIE_NO_ERASE_RECT_HACKFIX | ||
170 | #if QT_VERSION > 233 | ||
171 | virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) | ||
172 | #endif | ||
173 | #endif | ||
174 | private: | 169 | private: |
175 | void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); | 170 | void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); |
176 | void processQCopFile(); | 171 | void processQCopFile(); |
177 | 172 | ||
178 | #if defined(Q_WS_QWS) && !defined(QT_NO_COP) | 173 | #if defined(Q_WS_QWS) && !defined(QT_NO_COP) |
179 | QCopChannel *sysChannel; | 174 | QCopChannel *sysChannel; |
180 | QCopChannel *pidChannel; | 175 | QCopChannel *pidChannel; |
181 | #endif | 176 | #endif |
182 | QPEApplicationData *d; | 177 | QPEApplicationData *d; |
183 | 178 | ||
184 | bool reserved_sh; | 179 | bool reserved_sh; |
185 | 180 | ||
186 | }; | 181 | }; |
187 | 182 | ||
188 | 183 | ||
189 | 184 | ||
diff --git a/library/qt_override.cpp b/library/qt_override.cpp deleted file mode 100644 index a0d753b..0000000 --- a/library/qt_override.cpp +++ b/dev/null | |||
@@ -1,170 +0,0 @@ | |||
1 | |||
2 | #include <qpe/qpeapplication.h> | ||
3 | #include <qfontdatabase.h> | ||
4 | |||
5 | #include <unistd.h> | ||
6 | #include <stdlib.h> | ||
7 | #include <stdio.h> | ||
8 | #include <limits.h> | ||
9 | #include <sys/param.h> // for toolchains with old libc headers | ||
10 | |||
11 | #include <qtopia/qpeglobal.h> | ||
12 | #include "qt_override_p.h" | ||
13 | |||
14 | #if QT_VERSION > 233 | ||
15 | |||
16 | #ifndef OPIE_NO_ERASE_RECT_HACKFIX | ||
17 | struct color_fix_t { | ||
18 | char *m_app; | ||
19 | char *m_class; | ||
20 | char *m_name; | ||
21 | QColorGroup::ColorRole m_set; | ||
22 | QColorGroup::ColorRole m_get; | ||
23 | }; | ||
24 | |||
25 | |||
26 | |||
27 | static const color_fix_t apps_that_need_special_colors [] = { | ||
28 | { "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base }, | ||
29 | { "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base }, | ||
30 | |||
31 | { 0, 0, 0, QColorGroup::Base, QColorGroup::Base } | ||
32 | }; | ||
33 | |||
34 | #endif | ||
35 | |||
36 | #ifndef OPIE_NO_OVERRIDE_QT | ||
37 | |||
38 | static const char * const apps_that_need_pointsizes_times_10 [] = { | ||
39 | "HancomMobileWord", | ||
40 | "hancomsheet", | ||
41 | "HancomPresenterViewer", | ||
42 | |||
43 | 0 | ||
44 | }; | ||
45 | |||
46 | |||
47 | |||
48 | |||
49 | int Opie::force_appearance = 0; | ||
50 | |||
51 | |||
52 | // Return the *real* name of the binary - not just a quick guess | ||
53 | // by looking at argv [0] (which could be anything) | ||
54 | |||
55 | static void binaryNameFree ( ) | ||
56 | { | ||
57 | ::free ((void *) Opie::binaryName ( )); // we need to cast away the const here | ||
58 | } | ||
59 | |||
60 | const char *Opie::binaryName ( ) | ||
61 | { | ||
62 | static const char *appname = 0; | ||
63 | |||
64 | if ( !appname ) { | ||
65 | char dst [PATH_MAX + 1]; | ||
66 | int l = ::readlink ( "/proc/self/exe", dst, PATH_MAX ); | ||
67 | |||
68 | if ( l <= 0 ) | ||
69 | l = 0; | ||
70 | |||
71 | dst [l] = 0; | ||
72 | const char *b = ::strrchr ( dst, '/' ); | ||
73 | appname = ::strdup ( b ? b + 1 : dst ); | ||
74 | |||
75 | ::atexit ( binaryNameFree ); | ||
76 | } | ||
77 | return appname; | ||
78 | } | ||
79 | |||
80 | #else | ||
81 | int Opie::force_appearance = 0; | ||
82 | #endif | ||
83 | |||
84 | // Fix for a toolchain incompatibility (binaries compiled with | ||
85 | // old tcs using shared libs compiled with newer tcs) | ||
86 | |||
87 | extern "C" { | ||
88 | |||
89 | extern void __gmon_start__ ( ) QPE_WEAK_SYMBOL; | ||
90 | extern void __gmon_start__ ( ) | ||
91 | { | ||
92 | } | ||
93 | |||
94 | } | ||
95 | |||
96 | |||
97 | #ifndef OPIE_NO_ERASE_RECT_HACKFIX | ||
98 | // Fix for apps, that use QPainter::eraseRect() which doesn't work with styles | ||
99 | // that set a background pixmap (it would be easier to fix eraseRect(), but | ||
100 | // TT made it an inline ...) | ||
101 | |||
102 | void QPEApplication::polish ( QWidget *w ) | ||
103 | { | ||
104 | #ifndef OPIE_NO_OVERRIDE_QT | ||
105 | for ( const color_fix_t *ptr = apps_that_need_special_colors; ptr-> m_app; ptr++ ) { | ||
106 | if (( ::strcmp ( Opie::binaryName ( ), ptr-> m_app ) == 0 ) && | ||
107 | ( ptr-> m_class ? w-> inherits ( ptr-> m_class ) : true ) && | ||
108 | ( ptr-> m_name ? ( ::strcmp ( w-> name ( ), ptr-> m_name ) == 0 ) : true )) { | ||
109 | QPalette pal = w-> palette ( ); | ||
110 | pal. setColor ( ptr-> m_set, pal. color ( QPalette::Active, ptr-> m_get )); | ||
111 | w-> setPalette ( pal ); | ||
112 | } | ||
113 | } | ||
114 | #endif | ||
115 | QApplication::polish ( w ); | ||
116 | } | ||
117 | #endif | ||
118 | |||
119 | |||
120 | #ifndef OPIE_NO_OVERRIDE_QT | ||
121 | // Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes | ||
122 | // were multiplied by 10 (which was incorrect) | ||
123 | |||
124 | QValueList <int> QFontDatabase::pointSizes ( QString const &family, QString const &style, QString const &charset ) | ||
125 | { | ||
126 | QValueList <int> sl = pointSizes_NonWeak ( family, style, charset ); | ||
127 | |||
128 | for ( const char * const *ptr = apps_that_need_pointsizes_times_10; *ptr; ptr++ ) { | ||
129 | if ( ::strcmp ( Opie::binaryName ( ), *ptr ) == 0 ) { | ||
130 | for ( QValueList <int>::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) | ||
131 | *it *= 10; | ||
132 | } | ||
133 | } | ||
134 | return sl; | ||
135 | } | ||
136 | |||
137 | |||
138 | // Various style/font/color related overrides for weak symbols in Qt/E, | ||
139 | // which allows us to force the usage of the global Opie appearance. | ||
140 | |||
141 | void QApplication::setStyle ( QStyle *style ) | ||
142 | { | ||
143 | if ( Opie::force_appearance & Opie::Force_Style ) | ||
144 | delete style; | ||
145 | else | ||
146 | QApplication::setStyle_NonWeak ( style ); | ||
147 | } | ||
148 | |||
149 | void QApplication::setPalette ( const QPalette &pal, bool informWidgets, const char *className ) | ||
150 | { | ||
151 | if (!( Opie::force_appearance & Opie::Force_Style )) | ||
152 | QApplication::setPalette_NonWeak ( pal, informWidgets, className ); | ||
153 | } | ||
154 | |||
155 | void QApplication::setFont ( const QFont &fnt, bool informWidgets, const char *className ) | ||
156 | { | ||
157 | if (!( Opie::force_appearance & Opie::Force_Font )) | ||
158 | QApplication::setFont_NonWeak ( fnt, informWidgets, className ); | ||
159 | } | ||
160 | |||
161 | |||
162 | void QApplication::qwsSetDecoration ( QWSDecoration *deco ) | ||
163 | { | ||
164 | if ( Opie::force_appearance & Opie::Force_Decoration ) | ||
165 | delete deco; | ||
166 | else | ||
167 | QApplication::qwsSetDecoration_NonWeak ( deco ); | ||
168 | } | ||
169 | #endif | ||
170 | #endif | ||
diff --git a/library/qt_override_p.h b/library/qt_override_p.h deleted file mode 100644 index cb05d15..0000000 --- a/library/qt_override_p.h +++ b/dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | #ifndef __QT_OVERRIDE_H__ | ||
2 | #define __QT_OVERRIDE_H__ | ||
3 | |||
4 | #if QT_VERSION > 233 | ||
5 | |||
6 | namespace Opie { | ||
7 | |||
8 | enum ForceAppearance { | ||
9 | Force_Style = 0x01, | ||
10 | Force_Font = 0x02, | ||
11 | Force_Decoration = 0x04, | ||
12 | |||
13 | Force_All = 0xff, | ||
14 | Force_None = 0x00, | ||
15 | }; | ||
16 | |||
17 | extern const char *binaryName ( ); | ||
18 | |||
19 | extern int force_appearance; | ||
20 | |||
21 | } | ||
22 | |||
23 | #endif // (QT_VERSION >233) | ||
24 | |||
25 | #endif | ||
diff --git a/noncore/settings/appearance2/appearance.cpp b/noncore/settings/appearance2/appearance.cpp index 088171c..d649ed6 100644 --- a/noncore/settings/appearance2/appearance.cpp +++ b/noncore/settings/appearance2/appearance.cpp | |||
@@ -280,111 +280,32 @@ QWidget *Appearance::createColorTab ( QWidget *parent, Config &cfg ) | |||
280 | QWhatsThis::add( tempButton, tr( "Click here to delete the color scheme selected in the list to the left." ) ); | 280 | QWhatsThis::add( tempButton, tr( "Click here to delete the color scheme selected in the list to the left." ) ); |
281 | 281 | ||
282 | tempButton = new QPushButton( tab, "saveSchemeButton" ); | 282 | tempButton = new QPushButton( tab, "saveSchemeButton" ); |
283 | tempButton->setText( tr( "Save" ) ); | 283 | tempButton->setText( tr( "Save" ) ); |
284 | connect( tempButton, SIGNAL( clicked() ), this, SLOT( saveSchemeClicked() ) ); | 284 | connect( tempButton, SIGNAL( clicked() ), this, SLOT( saveSchemeClicked() ) ); |
285 | gridLayout->addWidget( tempButton, 2, 1 ); | 285 | gridLayout->addWidget( tempButton, 2, 1 ); |
286 | QWhatsThis::add( tempButton, tr( "Click here to name and save the current color scheme." ) ); | 286 | QWhatsThis::add( tempButton, tr( "Click here to name and save the current color scheme." ) ); |
287 | 287 | ||
288 | return tab; | 288 | return tab; |
289 | } | 289 | } |
290 | 290 | ||
291 | QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg ) | 291 | QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg ) |
292 | { | 292 | { |
293 | QWidget *tab = new QWidget ( parent ); | 293 | QWidget *tab = new QWidget ( parent ); |
294 | QVBoxLayout *vertLayout = new QVBoxLayout( tab, 3, 3 ); | 294 | QVBoxLayout *vertLayout = new QVBoxLayout( tab, 3, 3 ); |
295 | 295 | ||
296 | QGridLayout *lay = new QGridLayout ( vertLayout, 0, 0, 3, 0 ); | ||
297 | |||
298 | m_force = new QCheckBox ( tr( "Force styling for all applications." ), tab ); | ||
299 | m_force-> setChecked ( cfg. readBoolEntry ( "ForceStyle" )); | ||
300 | lay-> addMultiCellWidget ( m_force, 0, 0, 0, 1 ); | ||
301 | QWhatsThis::add( m_force, tr( "Click here to allow all applications to use global appearance settings." ) ); | ||
302 | |||
303 | QLabel *l = new QLabel ( tab ); | ||
304 | l-> setText ( QString ( "<p>%1</p>" ). arg ( tr( "Disable styling for these applications ( <b>*</b> can be used as a wildcard):" ))); | ||
305 | lay-> addMultiCellWidget ( l, 1, 1, 0, 1 ); | ||
306 | QWhatsThis::add( l, tr( "If some applications do not display correctly with the global appearance settings, certain features can be turned off for that application.\n\nThis area allows you to select an application and which settings you wish to disable." ) ); | ||
307 | |||
308 | m_except = new QListView ( tab ); | ||
309 | m_except-> addColumn ( Resource::loadIconSet ( "appearance" ), "", 24 ); | ||
310 | m_except-> addColumn ( Resource::loadIconSet ( "font" ), "", 24 ); | ||
311 | m_except-> addColumn ( Resource::loadIconSet ( "appearance/deco" ), "", 24 ); | ||
312 | m_except-> addColumn ( tr( "Binary file(s)" )); | ||
313 | m_except-> setColumnAlignment ( 0, AlignCenter ); | ||
314 | m_except-> setColumnAlignment ( 1, AlignCenter ); | ||
315 | m_except-> setColumnAlignment ( 2, AlignCenter ); | ||
316 | m_except-> setAllColumnsShowFocus ( true ); | ||
317 | m_except-> setMinimumHeight ( 30 ); | ||
318 | m_except-> header ( )-> setClickEnabled ( false ); | ||
319 | m_except-> header ( )-> setResizeEnabled ( false ); | ||
320 | m_except-> header ( )-> setMovingEnabled ( false ); | ||
321 | m_except-> setSorting ( -1 ); | ||
322 | lay-> addMultiCellWidget ( m_except, 2, 6, 0, 0 ); | ||
323 | QWhatsThis::add( m_except, tr( "If some applications do not display correctly with the global appearance settings, certain features can be turned off for that application.\n\nThis area allows you to select an application and which settings you wish to disable." ) ); | ||
324 | |||
325 | connect ( m_except, SIGNAL( clicked(QListViewItem*,const QPoint&,int)), this, SLOT( clickedExcept(QListViewItem*,const QPoint&,int))); | ||
326 | |||
327 | QToolButton *tb = new QToolButton ( tab ); | ||
328 | tb-> setIconSet ( Resource::loadIconSet ( "appearance/add" )); | ||
329 | tb-> setFocusPolicy ( QWidget::StrongFocus ); | ||
330 | lay-> addWidget ( tb, 2, 1 ); | ||
331 | connect ( tb, SIGNAL( clicked()), this, SLOT( addExcept())); | ||
332 | QWhatsThis::add( tb, tr( "Click here to add an application to the list above." ) ); | ||
333 | |||
334 | tb = new QToolButton ( tab ); | ||
335 | tb-> setIconSet ( Resource::loadIconSet ( "editdelete" )); | ||
336 | tb-> setFocusPolicy ( QWidget::StrongFocus ); | ||
337 | lay-> addWidget ( tb, 3, 1 ); | ||
338 | connect ( tb, SIGNAL( clicked()), this, SLOT( delExcept())); | ||
339 | QWhatsThis::add( tb, tr( "Click here to delete the currently selected application." ) ); | ||
340 | |||
341 | tb = new QToolButton ( tab ); | ||
342 | tb-> setIconSet ( Resource::loadIconSet ( "up" )); | ||
343 | tb-> setFocusPolicy ( QWidget::StrongFocus ); | ||
344 | lay-> addWidget ( tb, 4, 1 ); | ||
345 | connect ( tb, SIGNAL( clicked()), this, SLOT( upExcept())); | ||
346 | QWhatsThis::add( tb, tr( "Click here to move the currently selected application up in the list." ) ); | ||
347 | |||
348 | tb = new QToolButton ( tab ); | ||
349 | tb-> setIconSet ( Resource::loadIconSet ( "down" )); | ||
350 | tb-> setFocusPolicy ( QWidget::StrongFocus ); | ||
351 | lay-> addWidget ( tb, 5, 1 ); | ||
352 | connect ( tb, SIGNAL( clicked()), this, SLOT( downExcept())); | ||
353 | QWhatsThis::add( tb, tr( "Click here to move the currently selected application down in the list." ) ); | ||
354 | |||
355 | lay-> setRowStretch ( 6, 10 ); | ||
356 | lay-> setColStretch ( 0, 10 ); | ||
357 | |||
358 | QStringList sl = cfg. readListEntry ( "NoStyle", ';' ); | ||
359 | QListViewItem *lvit = 0; | ||
360 | for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) | ||
361 | { | ||
362 | int fl = ( *it ). left ( 1 ). toInt ( 0, 32 ); | ||
363 | |||
364 | lvit = new ExceptListItem ( m_except, lvit, ( *it ). mid ( 1 ), fl & 0x01, fl & 0x02, fl & 0x04 ); | ||
365 | } | ||
366 | |||
367 | |||
368 | vertLayout-> addSpacing ( 3 ); | ||
369 | QFrame *f = new QFrame ( tab ); | ||
370 | f-> setFrameStyle ( QFrame::HLine | QFrame::Sunken ); | ||
371 | vertLayout-> addWidget ( f ); | ||
372 | vertLayout-> addSpacing ( 3 ); | ||
373 | |||
374 | |||
375 | QGridLayout* gridLayout = new QGridLayout ( vertLayout, 0, 0, 3, 0 ); | 296 | QGridLayout* gridLayout = new QGridLayout ( vertLayout, 0, 0, 3, 0 ); |
376 | 297 | ||
377 | int style = cfg. readNumEntry ( "TabStyle", 2 ) - 1; | 298 | int style = cfg. readNumEntry ( "TabStyle", 2 ) - 1; |
378 | bool tabtop = ( cfg. readEntry ( "TabPosition", "Top" ) == "Top" ); | 299 | bool tabtop = ( cfg. readEntry ( "TabPosition", "Top" ) == "Top" ); |
379 | 300 | ||
380 | QLabel* label = new QLabel( tr( "Tab style:" ), tab ); | 301 | QLabel* label = new QLabel( tr( "Tab style:" ), tab ); |
381 | gridLayout-> addWidget ( label, 0, 0 ); | 302 | gridLayout-> addWidget ( label, 0, 0 ); |
382 | 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" ) ); | 303 | 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" ) ); |
383 | 304 | ||
384 | QButtonGroup* btngrp = new QButtonGroup( tab, "buttongroup" ); | 305 | QButtonGroup* btngrp = new QButtonGroup( tab, "buttongroup" ); |
385 | btngrp-> hide ( ); | 306 | btngrp-> hide ( ); |
386 | btngrp-> setExclusive ( true ); | 307 | btngrp-> setExclusive ( true ); |
387 | 308 | ||
388 | m_tabstyle_list = new QComboBox ( false, tab, "tabstyle" ); | 309 | m_tabstyle_list = new QComboBox ( false, tab, "tabstyle" ); |
389 | m_tabstyle_list-> insertItem ( tr( "Tabs" )); | 310 | m_tabstyle_list-> insertItem ( tr( "Tabs" )); |
390 | m_tabstyle_list-> insertItem ( tr( "Tabs w/icons" )); | 311 | m_tabstyle_list-> insertItem ( tr( "Tabs w/icons" )); |
@@ -442,32 +363,37 @@ QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg ) | |||
442 | int rotDirection = cfg.readNumEntry( "rotatedir" ); | 363 | int rotDirection = cfg.readNumEntry( "rotatedir" ); |
443 | ODirection rot = CW; | 364 | ODirection rot = CW; |
444 | 365 | ||
445 | if (rotDirection == -1) | 366 | if (rotDirection == -1) |
446 | { | 367 | { |
447 | rot = ODevice::inst ( )-> direction ( ); | 368 | rot = ODevice::inst ( )-> direction ( ); |
448 | } | 369 | } |
449 | else | 370 | else |
450 | { | 371 | { |
451 | rot = (ODirection)rotDirection; | 372 | rot = (ODirection)rotDirection; |
452 | } | 373 | } |
453 | 374 | ||
454 | m_rotdir_cw-> setChecked ( rot == CW ); | 375 | m_rotdir_cw-> setChecked ( rot == CW ); |
455 | m_rotdir_ccw-> setChecked ( rot == CCW ); | 376 | m_rotdir_ccw-> setChecked ( rot == CCW ); |
456 | m_rotdir_flip-> setChecked ( rot == Flip ); | 377 | m_rotdir_flip-> setChecked ( rot == Flip ); |
457 | 378 | ||
379 | |||
380 | /* | ||
381 | * add a spacing | ||
382 | */ | ||
383 | vertLayout->addItem( new QSpacerItem( 1, 1, QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding ) ); | ||
458 | return tab; | 384 | return tab; |
459 | } | 385 | } |
460 | 386 | ||
461 | 387 | ||
462 | Appearance::Appearance( QWidget* parent, const char* name, WFlags ) | 388 | Appearance::Appearance( QWidget* parent, const char* name, WFlags ) |
463 | : QDialog ( parent, name, true, WStyle_ContextHelp ) | 389 | : QDialog ( parent, name, true, WStyle_ContextHelp ) |
464 | { | 390 | { |
465 | setCaption( tr( "Appearance Settings" ) ); | 391 | setCaption( tr( "Appearance Settings" ) ); |
466 | 392 | ||
467 | Config config( "qpe" ); | 393 | Config config( "qpe" ); |
468 | config.setGroup( "Appearance" ); | 394 | config.setGroup( "Appearance" ); |
469 | 395 | ||
470 | QVBoxLayout *top = new QVBoxLayout ( this, 3, 3 ); | 396 | QVBoxLayout *top = new QVBoxLayout ( this, 3, 3 ); |
471 | 397 | ||
472 | m_sample = new SampleWindow ( this ); | 398 | m_sample = new SampleWindow ( this ); |
473 | 399 | ||
@@ -554,49 +480,32 @@ void Appearance::accept ( ) | |||
554 | 480 | ||
555 | ODirection rot; | 481 | ODirection rot; |
556 | if (m_rotdir_ccw-> isChecked ( )) | 482 | if (m_rotdir_ccw-> isChecked ( )) |
557 | { | 483 | { |
558 | rot = CCW; | 484 | rot = CCW; |
559 | } | 485 | } |
560 | else if (m_rotdir_cw-> isChecked ( )) | 486 | else if (m_rotdir_cw-> isChecked ( )) |
561 | { | 487 | { |
562 | rot = CW; | 488 | rot = CW; |
563 | } | 489 | } |
564 | else | 490 | else |
565 | { | 491 | { |
566 | rot = Flip; | 492 | rot = Flip; |
567 | } | 493 | } |
568 | config. writeEntry ( "rotatedir", (int)rot ); | 494 | config. writeEntry ( "rotatedir", (int)rot ); |
569 | 495 | ||
570 | m_except-> setFocus ( ); // if the focus was on the embedded line-edit, we have to move it away first, so the contents are updated | ||
571 | |||
572 | QStringList sl; | ||
573 | QString exceptstr; | ||
574 | for ( ExceptListItem *it = (ExceptListItem *) m_except-> firstChild ( ); it; it = (ExceptListItem *) it-> nextSibling ( )) | ||
575 | { | ||
576 | int fl = 0; | ||
577 | fl |= ( it-> noStyle ( ) ? 0x01 : 0 ); | ||
578 | fl |= ( it-> noFont ( ) ? 0x02 : 0 ); | ||
579 | fl |= ( it-> noDeco ( ) ? 0x04 : 0 ); | ||
580 | exceptstr = QString::number ( fl, 32 ); | ||
581 | exceptstr.append( it-> pattern ( )); | ||
582 | sl << exceptstr; | ||
583 | } | ||
584 | config. writeEntry ( "NoStyle", sl, ';' ); | ||
585 | config. writeEntry ( "ForceStyle", m_force-> isChecked ( )); | ||
586 | |||
587 | config. write ( ); // need to flush the config info first | 496 | config. write ( ); // need to flush the config info first |
588 | Global::applyStyle ( ); | 497 | Global::applyStyle ( ); |
589 | 498 | ||
590 | QDialog::accept ( ); | 499 | QDialog::accept ( ); |
591 | } | 500 | } |
592 | 501 | ||
593 | void Appearance::done ( int r ) | 502 | void Appearance::done ( int r ) |
594 | { | 503 | { |
595 | QDialog::done ( r ); | 504 | QDialog::done ( r ); |
596 | close ( ); | 505 | close ( ); |
597 | } | 506 | } |
598 | 507 | ||
599 | 508 | ||
600 | void Appearance::styleClicked ( int index ) | 509 | void Appearance::styleClicked ( int index ) |
601 | { | 510 | { |
602 | StyleListItem *sli = (StyleListItem *) m_style_list-> item ( index ); | 511 | StyleListItem *sli = (StyleListItem *) m_style_list-> item ( index ); |
@@ -768,125 +677,16 @@ void Appearance::deleteSchemeClicked() | |||
768 | { | 677 | { |
769 | if ( QPEMessageBox::confirmDelete ( this, tr( "Delete scheme" ), item-> text ( ) ) ) | 678 | if ( QPEMessageBox::confirmDelete ( this, tr( "Delete scheme" ), item-> text ( ) ) ) |
770 | { | 679 | { |
771 | QString filestr = QPEApplication::qpeDir ( ); | 680 | QString filestr = QPEApplication::qpeDir ( ); |
772 | filestr.append( "/etc/colors/" ); | 681 | filestr.append( "/etc/colors/" ); |
773 | filestr.append( item-> text ( ) ); | 682 | filestr.append( item-> text ( ) ); |
774 | filestr.append( ".scheme" ); | 683 | filestr.append( ".scheme" ); |
775 | QFile::remove ( filestr ); | 684 | QFile::remove ( filestr ); |
776 | delete item; | 685 | delete item; |
777 | } | 686 | } |
778 | } | 687 | } |
779 | else | 688 | else |
780 | { | 689 | { |
781 | QMessageBox::information( this, tr( "Delete scheme" ), tr( "Unable to delete current scheme." )); | 690 | QMessageBox::information( this, tr( "Delete scheme" ), tr( "Unable to delete current scheme." )); |
782 | } | 691 | } |
783 | } | 692 | } |
784 | |||
785 | |||
786 | void Appearance::addExcept ( ) | ||
787 | { | ||
788 | ExceptListItem *it = new ExceptListItem ( m_except, 0, tr( "<new>" ), true, true, true ); | ||
789 | m_except-> ensureItemVisible ( it ); | ||
790 | m_except-> setSelected ( it, true ); | ||
791 | } | ||
792 | |||
793 | void Appearance::delExcept ( ) | ||
794 | { | ||
795 | if ( m_except-> selectedItem ( )) | ||
796 | { | ||
797 | m_except-> setFocus ( ); | ||
798 | delete m_except-> selectedItem ( ); | ||
799 | } | ||
800 | } | ||
801 | |||
802 | void Appearance::upExcept ( ) | ||
803 | { | ||
804 | ExceptListItem *it = (ExceptListItem *) m_except-> selectedItem ( ); | ||
805 | |||
806 | if ( it && it-> itemAbove ( )) | ||
807 | it-> itemAbove ( )-> moveItem ( it ); | ||
808 | } | ||
809 | |||
810 | void Appearance::downExcept ( ) | ||
811 | { | ||
812 | ExceptListItem *it = (ExceptListItem *) m_except-> selectedItem ( ); | ||
813 | |||
814 | if ( it && it-> itemBelow ( )) | ||
815 | it-> moveItem ( it-> itemBelow ( )); | ||
816 | } | ||
817 | |||
818 | class ExEdit : public QLineEdit | ||
819 | { | ||
820 | public: | ||
821 | ExEdit ( ExceptListItem *item ) | ||
822 | : QLineEdit ( item-> listView ( )-> viewport ( ), "exedit" ), it ( item ) | ||
823 | { | ||
824 | setFrame ( false ); | ||
825 | |||
826 | QRect r = it-> listView ( )-> itemRect ( it ); | ||
827 | |||
828 | int x = it-> listView ( )-> header ( )-> cellPos ( 3 ) - 1; | ||
829 | int y = r. y ( ); | ||
830 | int w = it-> listView ( )-> viewport ( )-> width ( ) - x; | ||
831 | int h = r. height ( ); // + 2; | ||
832 | |||
833 | setText ( it-> pattern ( )); | ||
834 | setGeometry ( x, y, w, h ); | ||
835 | |||
836 | odebug << "ExEdit: [" << it->text(2).latin1() << "] at " | ||
837 | << x << "," << y << " " << w << "," << h << oendl; | ||
838 | |||
839 | m_out = true; | ||
840 | |||
841 | show ( ); | ||
842 | setFocus ( ); | ||
843 | selectAll ( ); | ||
844 | end ( true ); | ||
845 | } | ||
846 | |||
847 | virtual void focusOutEvent ( QFocusEvent * ) | ||
848 | { | ||
849 | hide ( ); | ||
850 | if ( m_out ) | ||
851 | it-> setPattern ( text ( )); | ||
852 | delete this; | ||
853 | } | ||
854 | |||
855 | virtual void keyPressEvent ( QKeyEvent *e ) | ||
856 | { | ||
857 | if ( e-> key ( ) == Key_Return ) | ||
858 | it-> listView ( )-> setFocus ( ); | ||
859 | else if ( e-> key ( ) == Key_Escape ) | ||
860 | { | ||
861 | m_out = false; | ||
862 | it-> listView ( )-> setFocus ( ); | ||
863 | } | ||
864 | else | ||
865 | QLineEdit::keyPressEvent ( e ); | ||
866 | } | ||
867 | |||
868 | private: | ||
869 | ExceptListItem *it; | ||
870 | bool m_out; | ||
871 | }; | ||
872 | |||
873 | void Appearance::clickedExcept ( QListViewItem *item, const QPoint &, int c ) | ||
874 | { | ||
875 | if ( !item || c < 0 || c > 3 ) | ||
876 | return; | ||
877 | |||
878 | ExceptListItem *it = (ExceptListItem *) item; | ||
879 | |||
880 | if ( c == 0 ) | ||
881 | it-> setNoStyle ( !it-> noStyle ( )); | ||
882 | else if ( c == 1 ) | ||
883 | it-> setNoFont ( !it-> noFont ( )); | ||
884 | else if ( c == 2 ) | ||
885 | it-> setNoDeco ( !it-> noDeco ( )); | ||
886 | else if ( c == 3 ) | ||
887 | { | ||
888 | m_except-> ensureItemVisible ( it ); | ||
889 | new ExEdit ( it ); | ||
890 | } | ||
891 | } | ||
892 | |||
diff --git a/noncore/settings/appearance2/appearance.h b/noncore/settings/appearance2/appearance.h index 134a918..de2f1ab 100644 --- a/noncore/settings/appearance2/appearance.h +++ b/noncore/settings/appearance2/appearance.h | |||
@@ -65,38 +65,32 @@ protected: | |||
65 | virtual void accept ( ); | 65 | virtual void accept ( ); |
66 | virtual void done ( int r ); | 66 | virtual void done ( int r ); |
67 | 67 | ||
68 | protected slots: | 68 | protected slots: |
69 | void styleClicked ( int ); | 69 | void styleClicked ( int ); |
70 | void styleSettingsClicked ( ); | 70 | void styleSettingsClicked ( ); |
71 | void decoClicked ( int ); | 71 | void decoClicked ( int ); |
72 | void fontClicked ( const QFont & ); | 72 | void fontClicked ( const QFont & ); |
73 | void colorClicked ( int ); | 73 | void colorClicked ( int ); |
74 | 74 | ||
75 | void editSchemeClicked(); | 75 | void editSchemeClicked(); |
76 | void saveSchemeClicked(); | 76 | void saveSchemeClicked(); |
77 | void deleteSchemeClicked(); | 77 | void deleteSchemeClicked(); |
78 | 78 | ||
79 | void tabChanged ( QWidget * ); | 79 | void tabChanged ( QWidget * ); |
80 | 80 | ||
81 | void addExcept ( ); | ||
82 | void delExcept ( ); | ||
83 | void upExcept ( ); | ||
84 | void downExcept ( ); | ||
85 | void clickedExcept ( QListViewItem *, const QPoint &, int ); | ||
86 | |||
87 | private: | 81 | private: |
88 | void changeText(); | 82 | void changeText(); |
89 | 83 | ||
90 | QWidget *createStyleTab ( QWidget *parent, Config &cfg ); | 84 | QWidget *createStyleTab ( QWidget *parent, Config &cfg ); |
91 | QWidget *createDecoTab ( QWidget *parent, Config &cfg ); | 85 | QWidget *createDecoTab ( QWidget *parent, Config &cfg ); |
92 | QWidget *createFontTab ( QWidget *parent, Config &cfg ); | 86 | QWidget *createFontTab ( QWidget *parent, Config &cfg ); |
93 | QWidget *createColorTab ( QWidget *parent, Config &cfg ); | 87 | QWidget *createColorTab ( QWidget *parent, Config &cfg ); |
94 | QWidget *createAdvancedTab ( QWidget *parent, Config &cfg ); | 88 | QWidget *createAdvancedTab ( QWidget *parent, Config &cfg ); |
95 | 89 | ||
96 | private: | 90 | private: |
97 | bool m_style_changed; | 91 | bool m_style_changed; |
98 | bool m_font_changed; | 92 | bool m_font_changed; |
99 | bool m_scheme_changed; | 93 | bool m_scheme_changed; |
100 | bool m_deco_changed; | 94 | bool m_deco_changed; |
101 | bool m_color_changed; | 95 | bool m_color_changed; |
102 | 96 | ||
@@ -112,21 +106,19 @@ private: | |||
112 | 106 | ||
113 | QListBox * m_color_list; | 107 | QListBox * m_color_list; |
114 | 108 | ||
115 | Opie::Ui::OFontSelector *m_fontselect; | 109 | Opie::Ui::OFontSelector *m_fontselect; |
116 | 110 | ||
117 | SampleWindow *m_sample; | 111 | SampleWindow *m_sample; |
118 | 112 | ||
119 | QComboBox * m_tabstyle_list; | 113 | QComboBox * m_tabstyle_list; |
120 | QRadioButton *m_tabstyle_top; | 114 | QRadioButton *m_tabstyle_top; |
121 | QRadioButton *m_tabstyle_bottom; | 115 | QRadioButton *m_tabstyle_bottom; |
122 | 116 | ||
123 | QRadioButton *m_rotdir_cw; | 117 | QRadioButton *m_rotdir_cw; |
124 | QRadioButton *m_rotdir_ccw; | 118 | QRadioButton *m_rotdir_ccw; |
125 | QRadioButton *m_rotdir_flip; | 119 | QRadioButton *m_rotdir_flip; |
126 | 120 | ||
127 | QWidget * m_advtab; | 121 | QWidget * m_advtab; |
128 | QListView * m_except; | ||
129 | QCheckBox * m_force; | ||
130 | }; | 122 | }; |
131 | 123 | ||
132 | #endif | 124 | #endif |