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 /library | |
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-- | 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 |
5 files changed, 0 insertions, 246 deletions
diff --git a/library/library.pro b/library/library.pro index 04e125f..95c18a2 100644 --- a/library/library.pro +++ b/library/library.pro | |||
@@ -58,9 +58,8 @@ HEADERS = calendar.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 \ |
@@ -116,9 +115,8 @@ SOURCES = calendar.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 | ||
@@ -133,12 +131,8 @@ 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 |
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp index 1c5ced3..2bd7cbe 100644 --- a/library/qpeapplication.cpp +++ b/library/qpeapplication.cpp | |||
@@ -95,9 +95,8 @@ | |||
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 | ||
@@ -1351,33 +1350,11 @@ void QPEApplication::applyStyle() | |||
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" ) ); |
@@ -1406,13 +1383,8 @@ void QPEApplication::applyStyle() | |||
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 | } |
@@ -1420,21 +1392,9 @@ void QPEApplication::applyStyle() | |||
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 ) |
diff --git a/library/qpeapplication.h b/library/qpeapplication.h index 849d5b3..167fe69 100644 --- a/library/qpeapplication.h +++ b/library/qpeapplication.h | |||
@@ -165,13 +165,8 @@ protected: | |||
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 | ||
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 | ||