summaryrefslogtreecommitdiff
path: root/library
Unidiff
Diffstat (limited to 'library') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index f4a7f74..db8297f 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -1125,392 +1125,396 @@ bool QPEApplication::qwsEventFilter( QWSEvent * e )
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 1317#if QT_VERSION > 238
1318#ifdef Q_OS_MACX 1318#ifdef Q_OS_MACX
1319#define WEAK_SYMBOL __attribute__((weak_import)) 1319#define WEAK_SYMBOL __attribute__((weak_import))
1320#else 1320#else
1321#define WEAK_SYMBOL __attribute__((weak)) 1321#define WEAK_SYMBOL __attribute__((weak))
1322#endif 1322#endif
1323 1323
1324extern bool qt_left_hand_scrollbars WEAK_SYMBOL; 1324extern bool qt_left_hand_scrollbars WEAK_SYMBOL;
1325
1326#else
1327bool qt_left_hand_scrollbars = false;
1328#endif
1325/*! 1329/*!
1326 \internal 1330 \internal
1327*/ 1331*/
1328void QPEApplication::applyStyle() 1332void QPEApplication::applyStyle()
1329{ 1333{
1330 Config config( "qpe" ); 1334 Config config( "qpe" );
1331 config.setGroup( "Appearance" ); 1335 config.setGroup( "Appearance" );
1332 1336
1333#if QT_VERSION > 233 1337#if QT_VERSION > 233
1334#if !defined(OPIE_NO_OVERRIDE_QT) 1338#if !defined(OPIE_NO_OVERRIDE_QT)
1335 // don't block ourselves ... 1339 // don't block ourselves ...
1336 Opie::force_appearance = 0; 1340 Opie::force_appearance = 0;
1337 1341
1338 static QString appname = Opie::binaryName ( ); 1342 static QString appname = Opie::binaryName ( );
1339 1343
1340 QStringList ex = config. readListEntry ( "NoStyle", ';' ); 1344 QStringList ex = config. readListEntry ( "NoStyle", ';' );
1341 int nostyle = 0; 1345 int nostyle = 0;
1342 for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) { 1346 for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) {
1343 if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) { 1347 if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) {
1344 nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 ); 1348 nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 );
1345 break; 1349 break;
1346 } 1350 }
1347 } 1351 }
1348#else 1352#else
1349 int nostyle = 0; 1353 int nostyle = 0;
1350#endif 1354#endif
1351 1355
1352 // Widget style 1356 // Widget style
1353 QString style = config.readEntry( "Style", "FlatStyle" ); 1357 QString style = config.readEntry( "Style", "FlatStyle" );
1354 1358
1355 // don't set a custom style 1359 // don't set a custom style
1356 if ( nostyle & Opie::Force_Style ) 1360 if ( nostyle & Opie::Force_Style )
1357 style = "FlatStyle"; 1361 style = "FlatStyle";
1358 1362
1359 internalSetStyle ( style ); 1363 internalSetStyle ( style );
1360 1364
1361 // Colors - from /etc/colors/Liquid.scheme 1365 // Colors - from /etc/colors/Liquid.scheme
1362 QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) ); 1366 QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) );
1363 QColor btncolor( config.readEntry( "Button", "#96c8fa" ) ); 1367 QColor btncolor( config.readEntry( "Button", "#96c8fa" ) );
1364 QPalette pal( btncolor, bgcolor ); 1368 QPalette pal( btncolor, bgcolor );
1365 QString color = config.readEntry( "Highlight", "#73adef" ); 1369 QString color = config.readEntry( "Highlight", "#73adef" );
1366 pal.setColor( QColorGroup::Highlight, QColor( color ) ); 1370 pal.setColor( QColorGroup::Highlight, QColor( color ) );
1367 color = config.readEntry( "HighlightedText", "#FFFFFF" ); 1371 color = config.readEntry( "HighlightedText", "#FFFFFF" );
1368 pal.setColor( QColorGroup::HighlightedText, QColor( color ) ); 1372 pal.setColor( QColorGroup::HighlightedText, QColor( color ) );
1369 color = config.readEntry( "Text", "#000000" ); 1373 color = config.readEntry( "Text", "#000000" );
1370 pal.setColor( QColorGroup::Text, QColor( color ) ); 1374 pal.setColor( QColorGroup::Text, QColor( color ) );
1371 color = config.readEntry( "ButtonText", "#000000" ); 1375 color = config.readEntry( "ButtonText", "#000000" );
1372 pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) ); 1376 pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) );
1373 color = config.readEntry( "Base", "#FFFFFF" ); 1377 color = config.readEntry( "Base", "#FFFFFF" );
1374 pal.setColor( QColorGroup::Base, QColor( color ) ); 1378 pal.setColor( QColorGroup::Base, QColor( color ) );
1375 1379
1376 pal.setColor( QPalette::Disabled, QColorGroup::Text, 1380 pal.setColor( QPalette::Disabled, QColorGroup::Text,
1377 pal.color( QPalette::Active, QColorGroup::Background ).dark() ); 1381 pal.color( QPalette::Active, QColorGroup::Background ).dark() );
1378 1382
1379 setPalette( pal, TRUE ); 1383 setPalette( pal, TRUE );
1380 1384
1381 1385
1382 // Set the ScrollBar on the 'right' side but only if the weak symbol is present 1386 // Set the ScrollBar on the 'right' side but only if the weak symbol is present
1383 if (&qt_left_hand_scrollbars ) 1387 if (&qt_left_hand_scrollbars )
1384 qt_left_hand_scrollbars = config.readBoolEntry( "LeftHand", false ); 1388 qt_left_hand_scrollbars = config.readBoolEntry( "LeftHand", false );
1385 1389
1386 // Window Decoration 1390 // Window Decoration
1387 QString dec = config.readEntry( "Decoration", "Flat" ); 1391 QString dec = config.readEntry( "Decoration", "Flat" );
1388 1392
1389 // don't set a custom deco 1393 // don't set a custom deco
1390 if ( nostyle & Opie::Force_Decoration ) 1394 if ( nostyle & Opie::Force_Decoration )
1391 dec = ""; 1395 dec = "";
1392 1396
1393 1397
1394 if ( dec != d->decorationName ) { 1398 if ( dec != d->decorationName ) {
1395 qwsSetDecoration( new QPEDecoration( dec ) ); 1399 qwsSetDecoration( new QPEDecoration( dec ) );
1396 d->decorationName = dec; 1400 d->decorationName = dec;
1397 } 1401 }
1398 1402
1399 // Font 1403 // Font
1400 QString ff = config.readEntry( "FontFamily", font().family() ); 1404 QString ff = config.readEntry( "FontFamily", font().family() );
1401 int fs = config.readNumEntry( "FontSize", font().pointSize() ); 1405 int fs = config.readNumEntry( "FontSize", font().pointSize() );
1402 1406
1403 // don't set a custom font 1407 // don't set a custom font
1404 if ( nostyle & Opie::Force_Font ) { 1408 if ( nostyle & Opie::Force_Font ) {
1405 ff = "Vera"; 1409 ff = "Vera";
1406 fs = 10; 1410 fs = 10;
1407 } 1411 }
1408 1412
1409 setFont ( QFont ( ff, fs ), true ); 1413 setFont ( QFont ( ff, fs ), true );
1410 1414
1411#if !defined(OPIE_NO_OVERRIDE_QT) 1415#if !defined(OPIE_NO_OVERRIDE_QT)
1412 // revert to global blocking policy ... 1416 // revert to global blocking policy ...
1413 Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None; 1417 Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None;
1414 Opie::force_appearance &= ~nostyle; 1418 Opie::force_appearance &= ~nostyle;
1415#endif 1419#endif
1416#endif 1420#endif
1417} 1421}
1418 1422
1419void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data ) 1423void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data )
1420{ 1424{
1421#ifdef Q_WS_QWS 1425#ifdef Q_WS_QWS
1422 QDataStream stream( data, IO_ReadOnly ); 1426 QDataStream stream( data, IO_ReadOnly );
1423 if ( msg == "applyStyle()" ) { 1427 if ( msg == "applyStyle()" ) {
1424 applyStyle(); 1428 applyStyle();
1425 } 1429 }
1426 else if ( msg == "toggleApplicationMenu()" ) { 1430 else if ( msg == "toggleApplicationMenu()" ) {
1427 QWidget *active = activeWindow ( ); 1431 QWidget *active = activeWindow ( );
1428 1432
1429 if ( active ) { 1433 if ( active ) {
1430 QPEMenuToolFocusManager *man = QPEMenuToolFocusManager::manager ( ); 1434 QPEMenuToolFocusManager *man = QPEMenuToolFocusManager::manager ( );
1431 bool oldactive = man-> isActive ( ); 1435 bool oldactive = man-> isActive ( );
1432 1436
1433 man-> setActive( !man-> isActive() ); 1437 man-> setActive( !man-> isActive() );
1434 1438
1435 if ( !oldactive && !man-> isActive ( )) { // no menubar to toggle -> try O-Menu 1439 if ( !oldactive && !man-> isActive ( )) { // no menubar to toggle -> try O-Menu
1436 QCopEnvelope e ( "QPE/TaskBar", "toggleStartMenu()" ); 1440 QCopEnvelope e ( "QPE/TaskBar", "toggleStartMenu()" );
1437 } 1441 }
1438 } 1442 }
1439 } 1443 }
1440 else if ( msg == "setDefaultRotation(int)" ) { 1444 else if ( msg == "setDefaultRotation(int)" ) {
1441 if ( type() == GuiServer ) { 1445 if ( type() == GuiServer ) {
1442 int r; 1446 int r;
1443 stream >> r; 1447 stream >> r;
1444 setDefaultRotation( r ); 1448 setDefaultRotation( r );
1445 } 1449 }
1446 } 1450 }
1447 else if ( msg == "setCurrentMode(int,int,int)" ) { // Added: 2003-06-11 by Tim Ansell <mithro@mithis.net> 1451 else if ( msg == "setCurrentMode(int,int,int)" ) { // Added: 2003-06-11 by Tim Ansell <mithro@mithis.net>
1448 if ( type() == GuiServer ) { 1452 if ( type() == GuiServer ) {
1449 int x, y, depth; 1453 int x, y, depth;
1450 stream >> x; 1454 stream >> x;
1451 stream >> y; 1455 stream >> y;
1452 stream >> depth; 1456 stream >> depth;
1453 setCurrentMode( x, y, depth ); 1457 setCurrentMode( x, y, depth );
1454 } 1458 }
1455 } 1459 }
1456 else if ( msg == "reset()" ) { 1460 else if ( msg == "reset()" ) {
1457 if ( type() != GuiServer ) 1461 if ( type() != GuiServer )
1458 reset(); 1462 reset();
1459 } 1463 }
1460 else if ( msg == "setCurrentRotation(int)" ) { 1464 else if ( msg == "setCurrentRotation(int)" ) {
1461 int r; 1465 int r;
1462 stream >> r; 1466 stream >> r;
1463 setCurrentRotation( r ); 1467 setCurrentRotation( r );
1464 } 1468 }
1465 else if ( msg == "shutdown()" ) { 1469 else if ( msg == "shutdown()" ) {
1466 if ( type() == GuiServer ) 1470 if ( type() == GuiServer )
1467 shutdown(); 1471 shutdown();
1468 } 1472 }
1469 else if ( msg == "quit()" ) { 1473 else if ( msg == "quit()" ) {
1470 if ( type() != GuiServer ) 1474 if ( type() != GuiServer )
1471 tryQuit(); 1475 tryQuit();
1472 } 1476 }
1473 else if ( msg == "forceQuit()" ) { 1477 else if ( msg == "forceQuit()" ) {
1474 if ( type() != GuiServer ) 1478 if ( type() != GuiServer )
1475 quit(); 1479 quit();
1476 } 1480 }
1477 else if ( msg == "restart()" ) { 1481 else if ( msg == "restart()" ) {
1478 if ( type() == GuiServer ) 1482 if ( type() == GuiServer )
1479 restart(); 1483 restart();
1480 } 1484 }
1481 else if ( msg == "language(QString)" ) { 1485 else if ( msg == "language(QString)" ) {
1482 if ( type() == GuiServer ) { 1486 if ( type() == GuiServer ) {
1483 QString l; 1487 QString l;
1484 stream >> l; 1488 stream >> l;
1485 QString cl = getenv( "LANG" ); 1489 QString cl = getenv( "LANG" );
1486 if ( cl != l ) { 1490 if ( cl != l ) {
1487 if ( l.isNull() ) 1491 if ( l.isNull() )
1488 unsetenv( "LANG" ); 1492 unsetenv( "LANG" );
1489 else 1493 else
1490 setenv( "LANG", l.latin1(), 1 ); 1494 setenv( "LANG", l.latin1(), 1 );
1491 restart(); 1495 restart();
1492 } 1496 }
1493 } 1497 }
1494 } 1498 }
1495 else if ( msg == "timeChange(QString)" ) { 1499 else if ( msg == "timeChange(QString)" ) {
1496 QString t; 1500 QString t;
1497 stream >> t; 1501 stream >> t;
1498 if ( t.isNull() ) 1502 if ( t.isNull() )
1499 unsetenv( "TZ" ); 1503 unsetenv( "TZ" );
1500 else 1504 else
1501 setenv( "TZ", t.latin1(), 1 ); 1505 setenv( "TZ", t.latin1(), 1 );
1502 // emit the signal so everyone else knows... 1506 // emit the signal so everyone else knows...
1503 emit timeChanged(); 1507 emit timeChanged();
1504 } 1508 }
1505 else if ( msg == "addAlarm(QDateTime,QCString,QCString,int)" ) { 1509 else if ( msg == "addAlarm(QDateTime,QCString,QCString,int)" ) {
1506 if ( type() == GuiServer ) { 1510 if ( type() == GuiServer ) {
1507 QDateTime when; 1511 QDateTime when;
1508 QCString channel, message; 1512 QCString channel, message;
1509 int data; 1513 int data;
1510 stream >> when >> channel >> message >> data; 1514 stream >> when >> channel >> message >> data;
1511 AlarmServer::addAlarm( when, channel, message, data ); 1515 AlarmServer::addAlarm( when, channel, message, data );
1512 } 1516 }
1513 } 1517 }
1514 else if ( msg == "deleteAlarm(QDateTime,QCString,QCString,int)" ) { 1518 else if ( msg == "deleteAlarm(QDateTime,QCString,QCString,int)" ) {
1515 if ( type() == GuiServer ) { 1519 if ( type() == GuiServer ) {
1516 QDateTime when; 1520 QDateTime when;