summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index cfe0497..b1c8750 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -1061,513 +1061,513 @@ void QPEApplication::mapToDefaultAction( QWSKeyEvent * ke, int key )
1061bool QPEApplication::qwsEventFilter( QWSEvent * e ) 1061bool QPEApplication::qwsEventFilter( QWSEvent * e )
1062{ 1062{
1063 if ( !d->notbusysent && e->type == QWSEvent::Focus ) { 1063 if ( !d->notbusysent && e->type == QWSEvent::Focus ) {
1064 if ( qApp->type() != QApplication::GuiServer ) { 1064 if ( qApp->type() != QApplication::GuiServer ) {
1065 QCopEnvelope e( "QPE/System", "notBusy(QString)" ); 1065 QCopEnvelope e( "QPE/System", "notBusy(QString)" );
1066 e << d->appName; 1066 e << d->appName;
1067 } 1067 }
1068 d->notbusysent = TRUE; 1068 d->notbusysent = TRUE;
1069 } 1069 }
1070 if ( type() == GuiServer ) { 1070 if ( type() == GuiServer ) {
1071 switch ( e->type ) { 1071 switch ( e->type ) {
1072 case QWSEvent::Mouse: 1072 case QWSEvent::Mouse:
1073 if ( e->asMouse() ->simpleData.state && !QWidget::find( e->window() ) ) 1073 if ( e->asMouse() ->simpleData.state && !QWidget::find( e->window() ) )
1074 emit clientMoused(); 1074 emit clientMoused();
1075 break; 1075 break;
1076 default: 1076 default:
1077 break; 1077 break;
1078 } 1078 }
1079 } 1079 }
1080 if ( e->type == QWSEvent::Key ) { 1080 if ( e->type == QWSEvent::Key ) {
1081 QWSKeyEvent *ke = ( QWSKeyEvent * ) e; 1081 QWSKeyEvent *ke = ( QWSKeyEvent * ) e;
1082 if ( ke->simpleData.keycode == Qt::Key_F33 ) { 1082 if ( ke->simpleData.keycode == Qt::Key_F33 ) {
1083 // Use special "OK" key to press "OK" on top level widgets 1083 // Use special "OK" key to press "OK" on top level widgets
1084 QWidget * active = activeWindow(); 1084 QWidget * active = activeWindow();
1085 QWidget *popup = 0; 1085 QWidget *popup = 0;
1086 if ( active && active->isPopup() ) { 1086 if ( active && active->isPopup() ) {
1087 popup = active; 1087 popup = active;
1088 active = active->parentWidget(); 1088 active = active->parentWidget();
1089 } 1089 }
1090 if ( active && ( int ) active->winId() == ke->simpleData.window && 1090 if ( active && ( int ) active->winId() == ke->simpleData.window &&
1091 !active->testWFlags( WStyle_Customize | WType_Popup | WType_Desktop ) ) { 1091 !active->testWFlags( WStyle_Customize | WType_Popup | WType_Desktop ) ) {
1092 if ( ke->simpleData.is_press ) { 1092 if ( ke->simpleData.is_press ) {
1093 if ( popup ) 1093 if ( popup )
1094 popup->close(); 1094 popup->close();
1095 if ( active->inherits( "QDialog" ) ) { 1095 if ( active->inherits( "QDialog" ) ) {
1096 HackDialog * d = ( HackDialog * ) active; 1096 HackDialog * d = ( HackDialog * ) active;
1097 d->acceptIt(); 1097 d->acceptIt();
1098 return TRUE; 1098 return TRUE;
1099 } 1099 }
1100 else if ( ( ( HackWidget * ) active ) ->needsOk() ) { 1100 else if ( ( ( HackWidget * ) active ) ->needsOk() ) {
1101 QSignal s; 1101 QSignal s;
1102 s.connect( active, SLOT( accept() ) ); 1102 s.connect( active, SLOT( accept() ) );
1103 s.activate(); 1103 s.activate();
1104 } 1104 }
1105 else { 1105 else {
1106 // do the same as with the select key: Map to the default action of the widget: 1106 // do the same as with the select key: Map to the default action of the widget:
1107 mapToDefaultAction( ke, Qt::Key_Return ); 1107 mapToDefaultAction( ke, Qt::Key_Return );
1108 } 1108 }
1109 } 1109 }
1110 } 1110 }
1111 } 1111 }
1112 else if ( ke->simpleData.keycode == Qt::Key_F30 ) { 1112 else if ( ke->simpleData.keycode == Qt::Key_F30 ) {
1113 // Use special "select" key to do whatever default action a widget has 1113 // Use special "select" key to do whatever default action a widget has
1114 mapToDefaultAction( ke, Qt::Key_Space ); 1114 mapToDefaultAction( ke, Qt::Key_Space );
1115 } 1115 }
1116 else if ( ke->simpleData.keycode == Qt::Key_Escape && 1116 else if ( ke->simpleData.keycode == Qt::Key_Escape &&
1117 ke->simpleData.is_press ) { 1117 ke->simpleData.is_press ) {
1118 // Escape key closes app if focus on toplevel 1118 // Escape key closes app if focus on toplevel
1119 QWidget * active = activeWindow(); 1119 QWidget * active = activeWindow();
1120 if ( active && active->testWFlags( WType_TopLevel ) && 1120 if ( active && active->testWFlags( WType_TopLevel ) &&
1121 ( int ) active->winId() == ke->simpleData.window && 1121 ( int ) active->winId() == ke->simpleData.window &&
1122 !active->testWFlags( WStyle_Dialog | WStyle_Customize | WType_Popup | WType_Desktop ) ) { 1122 !active->testWFlags( WStyle_Dialog | WStyle_Customize | WType_Popup | WType_Desktop ) ) {
1123 if ( active->inherits( "QDialog" ) ) { 1123 if ( active->inherits( "QDialog" ) ) {
1124 HackDialog * d = ( HackDialog * ) active; 1124 HackDialog * d = ( HackDialog * ) active;
1125 d->rejectIt(); 1125 d->rejectIt();
1126 return TRUE; 1126 return TRUE;
1127 } else /*if ( strcmp( argv() [ 0 ], "embeddedkonsole" ) != 0 )*/ { 1127 } else /*if ( strcmp( argv() [ 0 ], "embeddedkonsole" ) != 0 )*/ {
1128 active->close(); 1128 active->close();
1129 } 1129 }
1130 } 1130 }
1131 1131
1132 } 1132 }
1133 else if ( ke->simpleData.keycode >= Qt::Key_F1 && ke->simpleData.keycode <= Qt::Key_F29 ) { 1133 else if ( ke->simpleData.keycode >= Qt::Key_F1 && ke->simpleData.keycode <= Qt::Key_F29 ) {
1134 // this should be if ( ODevice::inst ( )-> buttonForKeycode ( ... )) 1134 // this should be if ( ODevice::inst ( )-> buttonForKeycode ( ... ))
1135 // but we cannot access libopie function within libqpe :( 1135 // but we cannot access libopie function within libqpe :(
1136 1136
1137 QWidget * active = activeWindow ( ); 1137 QWidget * active = activeWindow ( );
1138 if ( active && ((int) active-> winId ( ) == ke-> simpleData.window )) { 1138 if ( active && ((int) active-> winId ( ) == ke-> simpleData.window )) {
1139 if ( d-> kbgrabbed ) { // we grabbed the keyboard 1139 if ( d-> kbgrabbed ) { // we grabbed the keyboard
1140 QChar ch ( ke-> simpleData.unicode ); 1140 QChar ch ( ke-> simpleData.unicode );
1141 QKeyEvent qke ( ke-> simpleData. is_press ? QEvent::KeyPress : QEvent::KeyRelease, 1141 QKeyEvent qke ( ke-> simpleData. is_press ? QEvent::KeyPress : QEvent::KeyRelease,
1142 ke-> simpleData.keycode, 1142 ke-> simpleData.keycode,
1143 ch. latin1 ( ), 1143 ch. latin1 ( ),
1144 ke-> simpleData.modifiers, 1144 ke-> simpleData.modifiers,
1145 QString ( ch ), 1145 QString ( ch ),
1146 ke-> simpleData.is_auto_repeat, 1 ); 1146 ke-> simpleData.is_auto_repeat, 1 );
1147 1147
1148 QObject *which = QWidget::keyboardGrabber ( ); 1148 QObject *which = QWidget::keyboardGrabber ( );
1149 if ( !which ) 1149 if ( !which )
1150 which = QApplication::focusWidget ( ); 1150 which = QApplication::focusWidget ( );
1151 if ( !which ) 1151 if ( !which )
1152 which = QApplication::activeWindow ( ); 1152 which = QApplication::activeWindow ( );
1153 if ( !which ) 1153 if ( !which )
1154 which = qApp; 1154 which = qApp;
1155 1155
1156 QApplication::sendEvent ( which, &qke ); 1156 QApplication::sendEvent ( which, &qke );
1157 } 1157 }
1158 else { // we didn't grab the keyboard, so send the event to the launcher 1158 else { // we didn't grab the keyboard, so send the event to the launcher
1159 QCopEnvelope e ( "QPE/Launcher", "deviceButton(int,int,int)" ); 1159 QCopEnvelope e ( "QPE/Launcher", "deviceButton(int,int,int)" );
1160 e << int( ke-> simpleData.keycode ) << int( ke-> simpleData. is_press ) << int( ke-> simpleData.is_auto_repeat ); 1160 e << int( ke-> simpleData.keycode ) << int( ke-> simpleData. is_press ) << int( ke-> simpleData.is_auto_repeat );
1161 } 1161 }
1162 } 1162 }
1163 return true; 1163 return true;
1164 } 1164 }
1165 } 1165 }
1166 if ( e->type == QWSEvent::Focus ) { 1166 if ( e->type == QWSEvent::Focus ) {
1167 QWSFocusEvent * fe = ( QWSFocusEvent* ) e; 1167 QWSFocusEvent * fe = ( QWSFocusEvent* ) e;
1168 if ( !fe->simpleData.get_focus ) { 1168 if ( !fe->simpleData.get_focus ) {
1169 QWidget * active = activeWindow(); 1169 QWidget * active = activeWindow();
1170 while ( active && active->isPopup() ) { 1170 while ( active && active->isPopup() ) {
1171 active->close(); 1171 active->close();
1172 active = activeWindow(); 1172 active = activeWindow();
1173 } 1173 }
1174 } 1174 }
1175 else { 1175 else {
1176 // make sure our modal widget is ALWAYS on top 1176 // make sure our modal widget is ALWAYS on top
1177 QWidget *topm = activeModalWidget(); 1177 QWidget *topm = activeModalWidget();
1178 if ( topm && static_cast<int>( topm->winId() ) != fe->simpleData.window) { 1178 if ( topm && static_cast<int>( topm->winId() ) != fe->simpleData.window) {
1179 topm->raise(); 1179 topm->raise();
1180 } 1180 }
1181 } 1181 }
1182 if ( fe->simpleData.get_focus && inputMethodDict ) { 1182 if ( fe->simpleData.get_focus && inputMethodDict ) {
1183 InputMethodHint m = inputMethodHint( QWidget::find( e->window() ) ); 1183 InputMethodHint m = inputMethodHint( QWidget::find( e->window() ) );
1184 if ( m == AlwaysOff ) 1184 if ( m == AlwaysOff )
1185 Global::hideInputMethod(); 1185 Global::hideInputMethod();
1186 if ( m == AlwaysOn ) 1186 if ( m == AlwaysOn )
1187 Global::showInputMethod(); 1187 Global::showInputMethod();
1188 } 1188 }
1189 } 1189 }
1190 1190
1191 1191
1192 return QApplication::qwsEventFilter( e ); 1192 return QApplication::qwsEventFilter( e );
1193} 1193}
1194#endif 1194#endif
1195 1195
1196/*! 1196/*!
1197 Destroys the QPEApplication. 1197 Destroys the QPEApplication.
1198*/ 1198*/
1199QPEApplication::~QPEApplication() 1199QPEApplication::~QPEApplication()
1200{ 1200{
1201 ungrabKeyboard(); 1201 ungrabKeyboard();
1202#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 1202#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
1203 // Need to delete QCopChannels early, since the display will 1203 // Need to delete QCopChannels early, since the display will
1204 // be gone by the time we get to ~QObject(). 1204 // be gone by the time we get to ~QObject().
1205 delete sysChannel; 1205 delete sysChannel;
1206 delete pidChannel; 1206 delete pidChannel;
1207#endif 1207#endif
1208 1208
1209 delete d; 1209 delete d;
1210} 1210}
1211 1211
1212/*! 1212/*!
1213 Returns <tt>$OPIEDIR/</tt>. 1213 Returns <tt>$OPIEDIR/</tt>.
1214*/ 1214*/
1215QString QPEApplication::qpeDir() 1215QString QPEApplication::qpeDir()
1216{ 1216{
1217 const char * base = getenv( "OPIEDIR" ); 1217 const char * base = getenv( "OPIEDIR" );
1218 if ( base ) 1218 if ( base )
1219 return QString( base ) + "/"; 1219 return QString( base ) + "/";
1220 1220
1221 return QString( "../" ); 1221 return QString( "../" );
1222} 1222}
1223 1223
1224/*! 1224/*!
1225 Returns the user's current Document directory. There is a trailing "/". 1225 Returns the user's current Document directory. There is a trailing "/".
1226 .. well, it does now,, and there's no trailing '/' 1226 .. well, it does now,, and there's no trailing '/'
1227*/ 1227*/
1228QString QPEApplication::documentDir() 1228QString QPEApplication::documentDir()
1229{ 1229{
1230 const char* base = getenv( "HOME"); 1230 const char* base = getenv( "HOME");
1231 if ( base ) 1231 if ( base )
1232 return QString( base ) + "/Documents"; 1232 return QString( base ) + "/Documents";
1233 1233
1234 return QString( "../Documents" ); 1234 return QString( "../Documents" );
1235} 1235}
1236 1236
1237static int deforient = -1; 1237static int deforient = -1;
1238 1238
1239/*! 1239/*!
1240 \internal 1240 \internal
1241*/ 1241*/
1242int QPEApplication::defaultRotation() 1242int QPEApplication::defaultRotation()
1243{ 1243{
1244 if ( deforient < 0 ) { 1244 if ( deforient < 0 ) {
1245 QString d = getenv( "QWS_DISPLAY" ); 1245 QString d = getenv( "QWS_DISPLAY" );
1246 if ( d.contains( "Rot90" ) ) { 1246 if ( d.contains( "Rot90" ) ) {
1247 deforient = 90; 1247 deforient = 90;
1248 } 1248 }
1249 else if ( d.contains( "Rot180" ) ) { 1249 else if ( d.contains( "Rot180" ) ) {
1250 deforient = 180; 1250 deforient = 180;
1251 } 1251 }
1252 else if ( d.contains( "Rot270" ) ) { 1252 else if ( d.contains( "Rot270" ) ) {
1253 deforient = 270; 1253 deforient = 270;
1254 } 1254 }
1255 else { 1255 else {
1256 deforient = 0; 1256 deforient = 0;
1257 } 1257 }
1258 } 1258 }
1259 return deforient; 1259 return deforient;
1260} 1260}
1261 1261
1262/*! 1262/*!
1263 \internal 1263 \internal
1264*/ 1264*/
1265void QPEApplication::setDefaultRotation( int r ) 1265void QPEApplication::setDefaultRotation( int r )
1266{ 1266{
1267 if ( qApp->type() == GuiServer ) { 1267 if ( qApp->type() == GuiServer ) {
1268 deforient = r; 1268 deforient = r;
1269 setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 ); 1269 setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 );
1270 Config config("qpe"); 1270 Config config("qpe");
1271 config.setGroup( "Rotation" ); 1271 config.setGroup( "Rotation" );
1272 config.writeEntry( "Rot", r ); 1272 config.writeEntry( "Rot", r );
1273 } 1273 }
1274 else { 1274 else {
1275#ifndef QT_NO_COP 1275#ifndef QT_NO_COP
1276 { QCopEnvelope e( "QPE/System", "setDefaultRotation(int)" ); 1276 { QCopEnvelope e( "QPE/System", "setDefaultRotation(int)" );
1277 e << r; 1277 e << r;
1278 } 1278 }
1279#endif 1279#endif
1280 1280
1281 } 1281 }
1282} 1282}
1283 1283
1284#include <qgfx_qws.h> 1284#include <qgfx_qws.h>
1285#include <qwindowsystem_qws.h> 1285#include <qwindowsystem_qws.h>
1286 1286
1287extern void qws_clearLoadedFonts(); 1287extern void qws_clearLoadedFonts();
1288 1288
1289void QPEApplication::setCurrentMode( int x, int y, int depth ) 1289void QPEApplication::setCurrentMode( int x, int y, int depth )
1290{ 1290{
1291 // Reset the caches 1291 // Reset the caches
1292 qws_clearLoadedFonts(); 1292 qws_clearLoadedFonts();
1293 QPixmapCache::clear(); 1293 QPixmapCache::clear();
1294 1294
1295 // Change the screen mode 1295 // Change the screen mode
1296 qt_screen->setMode(x, y, depth); 1296 qt_screen->setMode(x, y, depth);
1297 1297
1298 if ( qApp->type() == GuiServer ) { 1298 if ( qApp->type() == GuiServer ) {
1299 // Reconfigure the GuiServer 1299 // Reconfigure the GuiServer
1300 qwsServer->beginDisplayReconfigure(); 1300 qwsServer->beginDisplayReconfigure();
1301 qwsServer->endDisplayReconfigure(); 1301 qwsServer->endDisplayReconfigure();
1302 1302
1303 // Get all the running apps to reset 1303 // Get all the running apps to reset
1304 QCopEnvelope env( "QPE/System", "reset()" ); 1304 QCopEnvelope env( "QPE/System", "reset()" );
1305 } 1305 }
1306} 1306}
1307 1307
1308void QPEApplication::reset() { 1308void QPEApplication::reset() {
1309 // Reconnect to the screen 1309 // Reconnect to the screen
1310 qt_screen->disconnect(); 1310 qt_screen->disconnect();
1311 qt_screen->connect( QString::null ); 1311 qt_screen->connect( QString::null );
1312 1312
1313 // Redraw everything 1313 // Redraw everything
1314 applyStyle(); 1314 applyStyle();
1315} 1315}
1316 1316
1317#if (QT_VERSION < 238) & Q_OS_MACX 1317#if (QT_VERSION < 238) && Q_OS_MACX
1318bool qt_left_hand_scrollbars = false; 1318bool qt_left_hand_scrollbars = false;
1319#else 1319#else
1320#ifdef Q_OS_MACX 1320#ifdef Q_OS_MACX
1321#define WEAK_SYMBOL __attribute__((weak_import)) 1321#define WEAK_SYMBOL __attribute__((weak_import))
1322#else 1322#else
1323#define WEAK_SYMBOL __attribute__((weak)) 1323#define WEAK_SYMBOL __attribute__((weak))
1324#endif 1324#endif
1325extern bool qt_left_hand_scrollbars WEAK_SYMBOL; 1325extern bool qt_left_hand_scrollbars WEAK_SYMBOL;
1326#endif 1326#endif
1327 1327
1328/*! 1328/*!
1329 \internal 1329 \internal
1330*/ 1330*/
1331void QPEApplication::applyStyle() 1331void QPEApplication::applyStyle()
1332{ 1332{
1333 Config config( "qpe" ); 1333 Config config( "qpe" );
1334 config.setGroup( "Appearance" ); 1334 config.setGroup( "Appearance" );
1335 1335
1336#if QT_VERSION > 233 1336#if QT_VERSION > 233
1337#if !defined(OPIE_NO_OVERRIDE_QT) 1337#if !defined(OPIE_NO_OVERRIDE_QT)
1338 // don't block ourselves ... 1338 // don't block ourselves ...
1339 Opie::force_appearance = 0; 1339 Opie::force_appearance = 0;
1340 1340
1341 static QString appname = Opie::binaryName ( ); 1341 static QString appname = Opie::binaryName ( );
1342 1342
1343 QStringList ex = config. readListEntry ( "NoStyle", ';' ); 1343 QStringList ex = config. readListEntry ( "NoStyle", ';' );
1344 int nostyle = 0; 1344 int nostyle = 0;
1345 for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) { 1345 for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) {
1346 if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) { 1346 if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) {
1347 nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 ); 1347 nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 );
1348 break; 1348 break;
1349 } 1349 }
1350 } 1350 }
1351#else 1351#else
1352 int nostyle = 0; 1352 int nostyle = 0;
1353#endif 1353#endif
1354 1354
1355 // Widget style 1355 // Widget style
1356 QString style = config.readEntry( "Style", "FlatStyle" ); 1356 QString style = config.readEntry( "Style", "FlatStyle" );
1357 1357
1358 // don't set a custom style 1358 // don't set a custom style
1359 if ( nostyle & Opie::Force_Style ) 1359 if ( nostyle & Opie::Force_Style )
1360 style = "FlatStyle"; 1360 style = "FlatStyle";
1361 1361
1362 internalSetStyle ( style ); 1362 internalSetStyle ( style );
1363 1363
1364 // Colors - from /etc/colors/Liquid.scheme 1364 // Colors - from /etc/colors/Liquid.scheme
1365 QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) ); 1365 QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) );
1366 QColor btncolor( config.readEntry( "Button", "#96c8fa" ) ); 1366 QColor btncolor( config.readEntry( "Button", "#96c8fa" ) );
1367 QPalette pal( btncolor, bgcolor ); 1367 QPalette pal( btncolor, bgcolor );
1368 QString color = config.readEntry( "Highlight", "#73adef" ); 1368 QString color = config.readEntry( "Highlight", "#73adef" );
1369 pal.setColor( QColorGroup::Highlight, QColor( color ) ); 1369 pal.setColor( QColorGroup::Highlight, QColor( color ) );
1370 color = config.readEntry( "HighlightedText", "#FFFFFF" ); 1370 color = config.readEntry( "HighlightedText", "#FFFFFF" );
1371 pal.setColor( QColorGroup::HighlightedText, QColor( color ) ); 1371 pal.setColor( QColorGroup::HighlightedText, QColor( color ) );
1372 color = config.readEntry( "Text", "#000000" ); 1372 color = config.readEntry( "Text", "#000000" );
1373 pal.setColor( QColorGroup::Text, QColor( color ) ); 1373 pal.setColor( QColorGroup::Text, QColor( color ) );
1374 color = config.readEntry( "ButtonText", "#000000" ); 1374 color = config.readEntry( "ButtonText", "#000000" );
1375 pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) ); 1375 pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) );
1376 color = config.readEntry( "Base", "#FFFFFF" ); 1376 color = config.readEntry( "Base", "#FFFFFF" );
1377 pal.setColor( QColorGroup::Base, QColor( color ) ); 1377 pal.setColor( QColorGroup::Base, QColor( color ) );
1378 1378
1379 pal.setColor( QPalette::Disabled, QColorGroup::Text, 1379 pal.setColor( QPalette::Disabled, QColorGroup::Text,
1380 pal.color( QPalette::Active, QColorGroup::Background ).dark() ); 1380 pal.color( QPalette::Active, QColorGroup::Background ).dark() );
1381 1381
1382 setPalette( pal, TRUE ); 1382 setPalette( pal, TRUE );
1383 1383
1384 1384
1385 // Set the ScrollBar on the 'right' side but only if the weak symbol is present 1385 // Set the ScrollBar on the 'right' side but only if the weak symbol is present
1386 if (&qt_left_hand_scrollbars ) 1386 if (&qt_left_hand_scrollbars )
1387 qt_left_hand_scrollbars = config.readBoolEntry( "LeftHand", false ); 1387 qt_left_hand_scrollbars = config.readBoolEntry( "LeftHand", false );
1388 1388
1389 // Window Decoration 1389 // Window Decoration
1390 QString dec = config.readEntry( "Decoration", "Flat" ); 1390 QString dec = config.readEntry( "Decoration", "Flat" );
1391 1391
1392 // don't set a custom deco 1392 // don't set a custom deco
1393 if ( nostyle & Opie::Force_Decoration ) 1393 if ( nostyle & Opie::Force_Decoration )
1394 dec = ""; 1394 dec = "";
1395 1395
1396 1396
1397 if ( dec != d->decorationName ) { 1397 if ( dec != d->decorationName ) {
1398 qwsSetDecoration( new QPEDecoration( dec ) ); 1398 qwsSetDecoration( new QPEDecoration( dec ) );
1399 d->decorationName = dec; 1399 d->decorationName = dec;
1400 } 1400 }
1401 1401
1402 // Font 1402 // Font
1403 QString ff = config.readEntry( "FontFamily", font().family() ); 1403 QString ff = config.readEntry( "FontFamily", font().family() );
1404 int fs = config.readNumEntry( "FontSize", font().pointSize() ); 1404 int fs = config.readNumEntry( "FontSize", font().pointSize() );
1405 1405
1406 // don't set a custom font 1406 // don't set a custom font
1407 if ( nostyle & Opie::Force_Font ) { 1407 if ( nostyle & Opie::Force_Font ) {
1408 ff = "Vera"; 1408 ff = "Vera";
1409 fs = 10; 1409 fs = 10;
1410 } 1410 }
1411 1411
1412 setFont ( QFont ( ff, fs ), true ); 1412 setFont ( QFont ( ff, fs ), true );
1413 1413
1414#if !defined(OPIE_NO_OVERRIDE_QT) 1414#if !defined(OPIE_NO_OVERRIDE_QT)
1415 // revert to global blocking policy ... 1415 // revert to global blocking policy ...
1416 Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None; 1416 Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None;
1417 Opie::force_appearance &= ~nostyle; 1417 Opie::force_appearance &= ~nostyle;
1418#endif 1418#endif
1419#endif 1419#endif
1420} 1420}
1421 1421
1422void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data ) 1422void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data )
1423{ 1423{
1424#ifdef Q_WS_QWS 1424#ifdef Q_WS_QWS
1425 QDataStream stream( data, IO_ReadOnly ); 1425 QDataStream stream( data, IO_ReadOnly );
1426 if ( msg == "applyStyle()" ) { 1426 if ( msg == "applyStyle()" ) {
1427 applyStyle(); 1427 applyStyle();
1428 } 1428 }
1429 else if ( msg == "toggleApplicationMenu()" ) { 1429 else if ( msg == "toggleApplicationMenu()" ) {
1430 QWidget *active = activeWindow ( ); 1430 QWidget *active = activeWindow ( );
1431 1431
1432 if ( active ) { 1432 if ( active ) {
1433 QPEMenuToolFocusManager *man = QPEMenuToolFocusManager::manager ( ); 1433 QPEMenuToolFocusManager *man = QPEMenuToolFocusManager::manager ( );
1434 bool oldactive = man-> isActive ( ); 1434 bool oldactive = man-> isActive ( );
1435 1435
1436 man-> setActive( !man-> isActive() ); 1436 man-> setActive( !man-> isActive() );
1437 1437
1438 if ( !oldactive && !man-> isActive ( )) { // no menubar to toggle -> try O-Menu 1438 if ( !oldactive && !man-> isActive ( )) { // no menubar to toggle -> try O-Menu
1439 QCopEnvelope e ( "QPE/TaskBar", "toggleStartMenu()" ); 1439 QCopEnvelope e ( "QPE/TaskBar", "toggleStartMenu()" );
1440 } 1440 }
1441 } 1441 }
1442 } 1442 }
1443 else if ( msg == "setDefaultRotation(int)" ) { 1443 else if ( msg == "setDefaultRotation(int)" ) {
1444 if ( type() == GuiServer ) { 1444 if ( type() == GuiServer ) {
1445 int r; 1445 int r;
1446 stream >> r; 1446 stream >> r;
1447 setDefaultRotation( r ); 1447 setDefaultRotation( r );
1448 } 1448 }
1449 } 1449 }
1450 else if ( msg == "setCurrentMode(int,int,int)" ) { // Added: 2003-06-11 by Tim Ansell <mithro@mithis.net> 1450 else if ( msg == "setCurrentMode(int,int,int)" ) { // Added: 2003-06-11 by Tim Ansell <mithro@mithis.net>
1451 if ( type() == GuiServer ) { 1451 if ( type() == GuiServer ) {
1452 int x, y, depth; 1452 int x, y, depth;
1453 stream >> x; 1453 stream >> x;
1454 stream >> y; 1454 stream >> y;
1455 stream >> depth; 1455 stream >> depth;
1456 setCurrentMode( x, y, depth ); 1456 setCurrentMode( x, y, depth );
1457 } 1457 }
1458 } 1458 }
1459 else if ( msg == "reset()" ) { 1459 else if ( msg == "reset()" ) {
1460 if ( type() != GuiServer ) 1460 if ( type() != GuiServer )
1461 reset(); 1461 reset();
1462 } 1462 }
1463 else if ( msg == "setCurrentRotation(int)" ) { 1463 else if ( msg == "setCurrentRotation(int)" ) {
1464 int r; 1464 int r;
1465 stream >> r; 1465 stream >> r;
1466 setCurrentRotation( r ); 1466 setCurrentRotation( r );
1467 } 1467 }
1468 else if ( msg == "shutdown()" ) { 1468 else if ( msg == "shutdown()" ) {
1469 if ( type() == GuiServer ) 1469 if ( type() == GuiServer )
1470 shutdown(); 1470 shutdown();
1471 } 1471 }
1472 else if ( msg == "quit()" ) { 1472 else if ( msg == "quit()" ) {
1473 if ( type() != GuiServer ) 1473 if ( type() != GuiServer )
1474 tryQuit(); 1474 tryQuit();
1475 } 1475 }
1476 else if ( msg == "forceQuit()" ) { 1476 else if ( msg == "forceQuit()" ) {
1477 if ( type() != GuiServer ) 1477 if ( type() != GuiServer )
1478 quit(); 1478 quit();
1479 } 1479 }
1480 else if ( msg == "restart()" ) { 1480 else if ( msg == "restart()" ) {
1481 if ( type() == GuiServer ) 1481 if ( type() == GuiServer )
1482 restart(); 1482 restart();
1483 } 1483 }
1484 else if ( msg == "language(QString)" ) { 1484 else if ( msg == "language(QString)" ) {
1485 if ( type() == GuiServer ) { 1485 if ( type() == GuiServer ) {
1486 QString l; 1486 QString l;
1487 stream >> l; 1487 stream >> l;
1488 QString cl = getenv( "LANG" ); 1488 QString cl = getenv( "LANG" );
1489 if ( cl != l ) { 1489 if ( cl != l ) {
1490 if ( l.isNull() ) 1490 if ( l.isNull() )
1491 unsetenv( "LANG" ); 1491 unsetenv( "LANG" );
1492 else 1492 else
1493 setenv( "LANG", l.latin1(), 1 ); 1493 setenv( "LANG", l.latin1(), 1 );
1494 restart(); 1494 restart();
1495 } 1495 }
1496 } 1496 }
1497 } 1497 }
1498 else if ( msg == "timeChange(QString)" ) { 1498 else if ( msg == "timeChange(QString)" ) {
1499 QString t; 1499 QString t;
1500 stream >> t; 1500 stream >> t;
1501 if ( t.isNull() ) 1501 if ( t.isNull() )
1502 unsetenv( "TZ" ); 1502 unsetenv( "TZ" );
1503 else 1503 else
1504 setenv( "TZ", t.latin1(), 1 ); 1504 setenv( "TZ", t.latin1(), 1 );
1505 // emit the signal so everyone else knows... 1505 // emit the signal so everyone else knows...
1506 emit timeChanged(); 1506 emit timeChanged();
1507 } 1507 }
1508 else if ( msg == "addAlarm(QDateTime,QCString,QCString,int)" ) { 1508 else if ( msg == "addAlarm(QDateTime,QCString,QCString,int)" ) {
1509 if ( type() == GuiServer ) { 1509 if ( type() == GuiServer ) {
1510 QDateTime when; 1510 QDateTime when;
1511 QCString channel, message; 1511 QCString channel, message;
1512 int data; 1512 int data;
1513 stream >> when >> channel >> message >> data; 1513 stream >> when >> channel >> message >> data;
1514 AlarmServer::addAlarm( when, channel, message, data ); 1514 AlarmServer::addAlarm( when, channel, message, data );
1515 } 1515 }
1516 } 1516 }
1517 else if ( msg == "deleteAlarm(QDateTime,QCString,QCString,int)" ) { 1517 else if ( msg == "deleteAlarm(QDateTime,QCString,QCString,int)" ) {
1518 if ( type() == GuiServer ) { 1518 if ( type() == GuiServer ) {
1519 QDateTime when; 1519 QDateTime when;
1520 QCString channel, message; 1520 QCString channel, message;
1521 int data; 1521 int data;
1522 stream >> when >> channel >> message >> data; 1522 stream >> when >> channel >> message >> data;
1523 AlarmServer::deleteAlarm( when, channel, message, data ); 1523 AlarmServer::deleteAlarm( when, channel, message, data );
1524 } 1524 }
1525 } 1525 }
1526 else if ( msg == "clockChange(bool)" ) { 1526 else if ( msg == "clockChange(bool)" ) {
1527 int tmp; 1527 int tmp;
1528 stream >> tmp; 1528 stream >> tmp;
1529 emit clockChanged( tmp ); 1529 emit clockChanged( tmp );
1530 } 1530 }
1531 else if ( msg == "weekChange(bool)" ) { 1531 else if ( msg == "weekChange(bool)" ) {
1532 int tmp; 1532 int tmp;
1533 stream >> tmp; 1533 stream >> tmp;
1534 emit weekChanged( tmp ); 1534 emit weekChanged( tmp );
1535 } 1535 }
1536 else if ( msg == "setDateFormat(DateFormat)" ) { 1536 else if ( msg == "setDateFormat(DateFormat)" ) {
1537 DateFormat tmp; 1537 DateFormat tmp;
1538 stream >> tmp; 1538 stream >> tmp;
1539 emit dateFormatChanged( tmp ); 1539 emit dateFormatChanged( tmp );
1540 } 1540 }
1541 else if ( msg == "setVolume(int,int)" ) { 1541 else if ( msg == "setVolume(int,int)" ) {
1542 int t, v; 1542 int t, v;
1543 stream >> t >> v; 1543 stream >> t >> v;
1544 setVolume( t, v ); 1544 setVolume( t, v );
1545 emit volumeChanged( muted ); 1545 emit volumeChanged( muted );
1546 } 1546 }
1547 else if ( msg == "volumeChange(bool)" ) { 1547 else if ( msg == "volumeChange(bool)" ) {
1548 stream >> muted; 1548 stream >> muted;
1549 setVolume(); 1549 setVolume();
1550 emit volumeChanged( muted ); 1550 emit volumeChanged( muted );
1551 } 1551 }
1552 else if ( msg == "setMic(int,int)" ) { // Added: 2002-02-08 by Jeremy Cowgar <jc@cowgar.com> 1552 else if ( msg == "setMic(int,int)" ) { // Added: 2002-02-08 by Jeremy Cowgar <jc@cowgar.com>
1553 int t, v; 1553 int t, v;
1554 stream >> t >> v; 1554 stream >> t >> v;
1555 setMic( t, v ); 1555 setMic( t, v );
1556 emit micChanged( micMuted ); 1556 emit micChanged( micMuted );
1557 } 1557 }
1558 else if ( msg == "micChange(bool)" ) { // Added: 2002-02-08 by Jeremy Cowgar <jc@cowgar.com> 1558 else if ( msg == "micChange(bool)" ) { // Added: 2002-02-08 by Jeremy Cowgar <jc@cowgar.com>
1559 stream >> micMuted; 1559 stream >> micMuted;
1560 setMic(); 1560 setMic();
1561 emit micChanged( micMuted ); 1561 emit micChanged( micMuted );
1562 } 1562 }
1563 else if ( msg == "setBass(int,int)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org> 1563 else if ( msg == "setBass(int,int)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
1564 int t, v; 1564 int t, v;
1565 stream >> t >> v; 1565 stream >> t >> v;
1566 setBass( t, v ); 1566 setBass( t, v );
1567 } 1567 }
1568 else if ( msg == "bassChange(bool)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org> 1568 else if ( msg == "bassChange(bool)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
1569 setBass(); 1569 setBass();
1570 } 1570 }
1571 else if ( msg == "setTreble(int,int)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org> 1571 else if ( msg == "setTreble(int,int)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
1572 int t, v; 1572 int t, v;
1573 stream >> t >> v; 1573 stream >> t >> v;