summaryrefslogtreecommitdiff
path: root/library
Unidiff
Diffstat (limited to 'library') (more/less context) (show whitespace changes)
-rw-r--r--library/qpeapplication.h2
-rw-r--r--library/qt_override.cpp9
2 files changed, 10 insertions, 1 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 8c85ad0..d2782e4 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -119,99 +119,101 @@ public:
119 static InputMethodHint inputMethodHint( QWidget * ); 119 static InputMethodHint inputMethodHint( QWidget * );
120 120
121 void showMainWidget( QWidget*, bool nomax=FALSE ); 121 void showMainWidget( QWidget*, bool nomax=FALSE );
122 void showMainDocumentWidget( QWidget*, bool nomax=FALSE ); 122 void showMainDocumentWidget( QWidget*, bool nomax=FALSE );
123 static void showDialog( QDialog*, bool nomax=FALSE ); 123 static void showDialog( QDialog*, bool nomax=FALSE );
124 static int execDialog( QDialog*, bool nomax=FALSE ); 124 static int execDialog( QDialog*, bool nomax=FALSE );
125 static void showWidget( QWidget*, bool nomax=FALSE ); 125 static void showWidget( QWidget*, bool nomax=FALSE );
126 /* Merge setTempScreenSaverMode */ 126 /* Merge setTempScreenSaverMode */
127#ifdef QTOPIA_INTERNAL_INITAPP 127#ifdef QTOPIA_INTERNAL_INITAPP
128 void initApp( int argv, char **argv ); 128 void initApp( int argv, char **argv );
129#endif 129#endif
130 130
131 static void setKeepRunning(); 131 static void setKeepRunning();
132 bool keepRunning() const; 132 bool keepRunning() const;
133 133
134 bool keyboardGrabbed() const; 134 bool keyboardGrabbed() const;
135 135
136 int exec(); 136 int exec();
137 137
138signals: 138signals:
139 void clientMoused(); 139 void clientMoused();
140 void timeChanged(); 140 void timeChanged();
141 void clockChanged( bool pm ); 141 void clockChanged( bool pm );
142 void micChanged( bool muted ); 142 void micChanged( bool muted );
143 void volumeChanged( bool muted ); 143 void volumeChanged( bool muted );
144 void appMessage( const QCString& msg, const QByteArray& data); 144 void appMessage( const QCString& msg, const QByteArray& data);
145 void weekChanged( bool startOnMonday ); 145 void weekChanged( bool startOnMonday );
146 void dateFormatChanged( DateFormat ); 146 void dateFormatChanged( DateFormat );
147 void flush(); 147 void flush();
148 void reload(); 148 void reload();
149 /* linkChanged signal */ 149 /* linkChanged signal */
150 150
151private slots: 151private slots:
152 void systemMessage( const QCString &msg, const QByteArray &data ); 152 void systemMessage( const QCString &msg, const QByteArray &data );
153 void pidMessage( const QCString &msg, const QByteArray &data ); 153 void pidMessage( const QCString &msg, const QByteArray &data );
154 void removeSenderFromStylusDict(); 154 void removeSenderFromStylusDict();
155 void hideOrQuit(); 155 void hideOrQuit();
156 156
157protected: 157protected:
158 bool qwsEventFilter( QWSEvent * ); 158 bool qwsEventFilter( QWSEvent * );
159 void internalSetStyle( const QString &style ); 159 void internalSetStyle( const QString &style );
160 void prepareForTermination(bool willrestart); 160 void prepareForTermination(bool willrestart);
161 virtual void restart(); 161 virtual void restart();
162 virtual void shutdown(); 162 virtual void shutdown();
163 bool eventFilter( QObject *, QEvent * ); 163 bool eventFilter( QObject *, QEvent * );
164 void timerEvent( QTimerEvent * ); 164 void timerEvent( QTimerEvent * );
165 bool raiseAppropriateWindow(); 165 bool raiseAppropriateWindow();
166 virtual void tryQuit(); 166 virtual void tryQuit();
167#ifndef OPIE_NO_ERASE_RECT_HACKFIX
167#if QT_VERSION > 233 168#if QT_VERSION > 233
168 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) 169 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!)
169#endif 170#endif
171#endif
170private: 172private:
171#ifndef QT_NO_TRANSLATION 173#ifndef QT_NO_TRANSLATION
172 void installTranslation( const QString& baseName ); 174 void installTranslation( const QString& baseName );
173#endif 175#endif
174 void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); 176 void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
175 void processQCopFile(); 177 void processQCopFile();
176 178
177#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 179#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
178 QCopChannel *sysChannel; 180 QCopChannel *sysChannel;
179 QCopChannel *pidChannel; 181 QCopChannel *pidChannel;
180#endif 182#endif
181 QPEApplicationData *d; 183 QPEApplicationData *d;
182 184
183 bool reserved_sh; 185 bool reserved_sh;
184 186
185 187
186 188
187}; 189};
188 190
189inline void QPEApplication::showDialog( QDialog* d, bool nomax ) 191inline void QPEApplication::showDialog( QDialog* d, bool nomax )
190{ 192{
191 showWidget( d, nomax ); 193 showWidget( d, nomax );
192} 194}
193 195
194inline int QPEApplication::execDialog( QDialog* d, bool nomax ) 196inline int QPEApplication::execDialog( QDialog* d, bool nomax )
195{ 197{
196 showDialog( d, nomax ); 198 showDialog( d, nomax );
197 return d->exec(); 199 return d->exec();
198} 200}
199 201
200#ifdef Q_WS_QWS 202#ifdef Q_WS_QWS
201extern Q_EXPORT QRect qt_maxWindowRect; 203extern Q_EXPORT QRect qt_maxWindowRect;
202#endif 204#endif
203 205
204inline void QPEApplication::showWidget( QWidget* wg, bool nomax ) 206inline void QPEApplication::showWidget( QWidget* wg, bool nomax )
205{ 207{
206 if ( wg->isVisible() ) 208 if ( wg->isVisible() )
207 wg->show(); 209 wg->show();
208 else 210 else
209 { 211 {
210 if ( !nomax 212 if ( !nomax
211 && ( qApp->desktop()->width() <= 320 ) ) 213 && ( qApp->desktop()->width() <= 320 ) )
212 { 214 {
213 wg->showMaximized(); 215 wg->showMaximized();
214 } else { 216 } else {
215 #ifdef Q_WS_QWS 217 #ifdef Q_WS_QWS
216 QSize desk = QSize( qApp->desktop()->width(), qApp->desktop()->height() ); 218 QSize desk = QSize( qApp->desktop()->width(), qApp->desktop()->height() );
217 #else 219 #else
diff --git a/library/qt_override.cpp b/library/qt_override.cpp
index 4d1f475..56f82d7 100644
--- a/library/qt_override.cpp
+++ b/library/qt_override.cpp
@@ -1,160 +1,167 @@
1 1
2#include <qpe/qpeapplication.h> 2#include <qpe/qpeapplication.h>
3#include <qfontdatabase.h> 3#include <qfontdatabase.h>
4 4
5#include <unistd.h> 5#include <unistd.h>
6#include <stdlib.h> 6#include <stdlib.h>
7#include <stdio.h> 7#include <stdio.h>
8#include <limits.h> 8#include <limits.h>
9#include <sys/param.h> // for toolchains with old libc headers 9#include <sys/param.h> // for toolchains with old libc headers
10 10
11#include "qt_override_p.h" 11#include "qt_override_p.h"
12 12
13#if QT_VERSION > 233 13#if QT_VERSION > 233
14 14
15#ifndef OPIE_NO_ERASE_RECT_HACKFIX
15struct color_fix_t { 16struct color_fix_t {
16 char *m_app; 17 char *m_app;
17 char *m_class; 18 char *m_class;
18 char *m_name; 19 char *m_name;
19 QColorGroup::ColorRole m_set; 20 QColorGroup::ColorRole m_set;
20 QColorGroup::ColorRole m_get; 21 QColorGroup::ColorRole m_get;
21}; 22};
22 23
23#ifndef OPIE_NO_OVERRIDE_QT 24
24 25
25static const color_fix_t apps_that_need_special_colors [] = { 26static const color_fix_t apps_that_need_special_colors [] = {
26 { "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base }, 27 { "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base },
27 { "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base }, 28 { "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base },
28 29
29 { 0, 0, 0, QColorGroup::Base, QColorGroup::Base } 30 { 0, 0, 0, QColorGroup::Base, QColorGroup::Base }
30}; 31};
31 32
33#endif
34
35#ifndef OPIE_NO_OVERRIDE_QT
36
32static const char * const apps_that_need_pointsizes_times_10 [] = { 37static const char * const apps_that_need_pointsizes_times_10 [] = {
33 "HancomMobileWord", 38 "HancomMobileWord",
34 "hancomsheet", 39 "hancomsheet",
35 "HancomPresenterViewer", 40 "HancomPresenterViewer",
36 41
37 0 42 0
38}; 43};
39 44
40 45
41 46
42 47
43int Opie::force_appearance = 0; 48int Opie::force_appearance = 0;
44 49
45 50
46// Return the *real* name of the binary - not just a quick guess 51// Return the *real* name of the binary - not just a quick guess
47// by looking at argv [0] (which could be anything) 52// by looking at argv [0] (which could be anything)
48 53
49static void binaryNameFree ( ) 54static void binaryNameFree ( )
50{ 55{
51 ::free ((void *) Opie::binaryName ( )); // we need to cast away the const here 56 ::free ((void *) Opie::binaryName ( )); // we need to cast away the const here
52} 57}
53 58
54const char *Opie::binaryName ( ) 59const char *Opie::binaryName ( )
55{ 60{
56 static const char *appname = 0; 61 static const char *appname = 0;
57 62
58 if ( !appname ) { 63 if ( !appname ) {
59 char dst [PATH_MAX + 1]; 64 char dst [PATH_MAX + 1];
60 int l = ::readlink ( "/proc/self/exe", dst, PATH_MAX ); 65 int l = ::readlink ( "/proc/self/exe", dst, PATH_MAX );
61 66
62 if ( l <= 0 ) 67 if ( l <= 0 )
63 l = 0; 68 l = 0;
64 69
65 dst [l] = 0; 70 dst [l] = 0;
66 const char *b = ::strrchr ( dst, '/' ); 71 const char *b = ::strrchr ( dst, '/' );
67 appname = ::strdup ( b ? b + 1 : dst ); 72 appname = ::strdup ( b ? b + 1 : dst );
68 73
69 ::atexit ( binaryNameFree ); 74 ::atexit ( binaryNameFree );
70 } 75 }
71 return appname; 76 return appname;
72} 77}
73 78
74#else 79#else
75int Opie::force_appearance = 0; 80int Opie::force_appearance = 0;
76#endif 81#endif
77 82
78// Fix for a toolchain incompatibility (binaries compiled with 83// Fix for a toolchain incompatibility (binaries compiled with
79// old tcs using shared libs compiled with newer tcs) 84// old tcs using shared libs compiled with newer tcs)
80 85
81extern "C" { 86extern "C" {
82 87
83extern void __gmon_start__ ( ) __attribute__(( weak )); 88extern void __gmon_start__ ( ) __attribute__(( weak ));
84 89
85extern void __gmon_start__ ( ) 90extern void __gmon_start__ ( )
86{ 91{
87} 92}
88 93
89} 94}
90 95
91 96
97#ifndef OPIE_NO_ERASE_RECT_HACKFIX
92// Fix for apps, that use QPainter::eraseRect() which doesn't work with styles 98// Fix for apps, that use QPainter::eraseRect() which doesn't work with styles
93// that set a background pixmap (it would be easier to fix eraseRect(), but 99// that set a background pixmap (it would be easier to fix eraseRect(), but
94// TT made it an inline ...) 100// TT made it an inline ...)
95 101
96void QPEApplication::polish ( QWidget *w ) 102void QPEApplication::polish ( QWidget *w )
97{ 103{
98#ifndef OPIE_NO_OVERRIDE_QT 104#ifndef OPIE_NO_OVERRIDE_QT
99 //qDebug ( "QPEApplication::polish()" ); 105 //qDebug ( "QPEApplication::polish()" );
100 106
101 for ( const color_fix_t *ptr = apps_that_need_special_colors; ptr-> m_app; ptr++ ) { 107 for ( const color_fix_t *ptr = apps_that_need_special_colors; ptr-> m_app; ptr++ ) {
102 if (( ::strcmp ( Opie::binaryName ( ), ptr-> m_app ) == 0 ) && 108 if (( ::strcmp ( Opie::binaryName ( ), ptr-> m_app ) == 0 ) &&
103 ( ptr-> m_class ? w-> inherits ( ptr-> m_class ) : true ) && 109 ( ptr-> m_class ? w-> inherits ( ptr-> m_class ) : true ) &&
104 ( ptr-> m_name ? ( ::strcmp ( w-> name ( ), ptr-> m_name ) == 0 ) : true )) { 110 ( ptr-> m_name ? ( ::strcmp ( w-> name ( ), ptr-> m_name ) == 0 ) : true )) {
105 QPalette pal = w-> palette ( ); 111 QPalette pal = w-> palette ( );
106 pal. setColor ( ptr-> m_set, pal. color ( QPalette::Active, ptr-> m_get )); 112 pal. setColor ( ptr-> m_set, pal. color ( QPalette::Active, ptr-> m_get ));
107 w-> setPalette ( pal ); 113 w-> setPalette ( pal );
108 } 114 }
109 } 115 }
110#endif 116#endif
111 QApplication::polish ( w ); 117 QApplication::polish ( w );
112} 118}
119#endif
113 120
114 121
115#ifndef OPIE_NO_OVERRIDE_QT 122#ifndef OPIE_NO_OVERRIDE_QT
116// Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes 123// Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes
117// were multiplied by 10 (which was incorrect) 124// were multiplied by 10 (which was incorrect)
118 125
119QValueList <int> QFontDatabase::pointSizes ( QString const &family, QString const &style, QString const &charset ) 126QValueList <int> QFontDatabase::pointSizes ( QString const &family, QString const &style, QString const &charset )
120{ 127{
121 //qDebug ( "QFontDatabase::pointSizes()" ); 128 //qDebug ( "QFontDatabase::pointSizes()" );
122 129
123 QValueList <int> sl = pointSizes_NonWeak ( family, style, charset ); 130 QValueList <int> sl = pointSizes_NonWeak ( family, style, charset );
124 131
125 for ( const char * const *ptr = apps_that_need_pointsizes_times_10; *ptr; ptr++ ) { 132 for ( const char * const *ptr = apps_that_need_pointsizes_times_10; *ptr; ptr++ ) {
126 if ( ::strcmp ( Opie::binaryName ( ), *ptr ) == 0 ) { 133 if ( ::strcmp ( Opie::binaryName ( ), *ptr ) == 0 ) {
127 for ( QValueList <int>::Iterator it = sl. begin ( ); it != sl. end ( ); ++it ) 134 for ( QValueList <int>::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
128 *it *= 10; 135 *it *= 10;
129 } 136 }
130 } 137 }
131 return sl; 138 return sl;
132} 139}
133 140
134 141
135// Various style/font/color related overrides for weak symbols in Qt/E, 142// Various style/font/color related overrides for weak symbols in Qt/E,
136// which allows us to force the usage of the global Opie appearance. 143// which allows us to force the usage of the global Opie appearance.
137 144
138void QApplication::setStyle ( QStyle *style ) 145void QApplication::setStyle ( QStyle *style )
139{ 146{
140 //qDebug ( "QApplication::setStyle()" ); 147 //qDebug ( "QApplication::setStyle()" );
141 148
142 if ( Opie::force_appearance & Opie::Force_Style ) 149 if ( Opie::force_appearance & Opie::Force_Style )
143 delete style; 150 delete style;
144 else 151 else
145 QApplication::setStyle_NonWeak ( style ); 152 QApplication::setStyle_NonWeak ( style );
146} 153}
147 154
148void QApplication::setPalette ( const QPalette &pal, bool informWidgets, const char *className ) 155void QApplication::setPalette ( const QPalette &pal, bool informWidgets, const char *className )
149{ 156{
150 //qDebug ( "QApplication::setPalette()" ); 157 //qDebug ( "QApplication::setPalette()" );
151 158
152 if (!( Opie::force_appearance & Opie::Force_Style )) 159 if (!( Opie::force_appearance & Opie::Force_Style ))
153 QApplication::setPalette_NonWeak ( pal, informWidgets, className ); 160 QApplication::setPalette_NonWeak ( pal, informWidgets, className );
154} 161}
155 162
156void QApplication::setFont ( const QFont &fnt, bool informWidgets, const char *className ) 163void QApplication::setFont ( const QFont &fnt, bool informWidgets, const char *className )
157{ 164{
158 //qDebug ( "QApplication::setFont()" ); 165 //qDebug ( "QApplication::setFont()" );
159 166
160 if (!( Opie::force_appearance & Opie::Force_Font )) 167 if (!( Opie::force_appearance & Opie::Force_Font ))