summaryrefslogtreecommitdiff
path: root/library/qpeapplication.cpp
Unidiff
Diffstat (limited to 'library/qpeapplication.cpp') (more/less context) (show whitespace changes)
-rw-r--r--library/qpeapplication.cpp52
1 files changed, 33 insertions, 19 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 619b4cb..4e08a1f 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -261,49 +261,57 @@ public:
261 lib->unload(); 261 lib->unload();
262 delete lib; 262 delete lib;
263 } 263 }
264 } 264 }
265 } 265 }
266 QString styleName; 266 QString styleName;
267 QString decorationName; 267 QString decorationName;
268}; 268};
269 269
270class ResourceMimeFactory : public QMimeSourceFactory 270class ResourceMimeFactory : public QMimeSourceFactory
271{ 271{
272public: 272public:
273 ResourceMimeFactory() 273 ResourceMimeFactory() : resImage( 0 )
274 { 274 {
275 setFilePath( Global::helpPath() ); 275 setFilePath( Global::helpPath() );
276 setExtensionType( "html", "text/html;charset=UTF-8" ); 276 setExtensionType( "html", "text/html;charset=UTF-8" );
277 } 277 }
278 ~ResourceMimeFactory() {
279 delete resImage;
280 }
278 281
279 const QMimeSource* data( const QString& abs_name ) const 282 const QMimeSource* data( const QString& abs_name ) const
280 { 283 {
281 const QMimeSource * r = QMimeSourceFactory::data( abs_name ); 284 const QMimeSource * r = QMimeSourceFactory::data( abs_name );
282 if ( !r ) { 285 if ( !r ) {
283 int sl = abs_name.length(); 286 int sl = abs_name.length();
284 do { 287 do {
285 sl = abs_name.findRev( '/', sl - 1 ); 288 sl = abs_name.findRev( '/', sl - 1 );
286 QString name = sl >= 0 ? abs_name.mid( sl + 1 ) : abs_name; 289 QString name = sl >= 0 ? abs_name.mid( sl + 1 ) : abs_name;
287 int dot = name.findRev( '.' ); 290 int dot = name.findRev( '.' );
288 if ( dot >= 0 ) 291 if ( dot >= 0 )
289 name = name.left( dot ); 292 name = name.left( dot );
290 QImage img = Resource::loadImage( name ); 293 QImage img = Resource::loadImage( name );
291 if ( !img.isNull() ) 294 if ( !img.isNull() ) {
292 r = new QImageDrag( img ); 295 delete resImage;
296 resImage = new QImageDrag( img );
297 r = resImage;
298 }
293 } 299 }
294 while ( !r && sl > 0 ); 300 while ( !r && sl > 0 );
295 } 301 }
296 return r; 302 return r;
297 } 303 }
304private:
305 mutable QImageDrag *resImage;
298}; 306};
299 307
300static int muted = 0; 308static int muted = 0;
301static int micMuted = 0; 309static int micMuted = 0;
302 310
303static void setVolume( int t = 0, int percent = -1 ) 311static void setVolume( int t = 0, int percent = -1 )
304{ 312{
305 switch ( t ) { 313 switch ( t ) {
306 case 0: { 314 case 0: {
307 Config cfg( "qpe" ); 315 Config cfg( "qpe" );
308 cfg.setGroup( "Volume" ); 316 cfg.setGroup( "Volume" );
309 if ( percent < 0 ) 317 if ( percent < 0 )
@@ -974,54 +982,54 @@ void QPEApplication::applyStyle()
974 static QString appname = Opie::binaryName ( ); 982 static QString appname = Opie::binaryName ( );
975 983
976 QStringList ex = config. readListEntry ( "NoStyle", ';' ); 984 QStringList ex = config. readListEntry ( "NoStyle", ';' );
977 int nostyle = 0; 985 int nostyle = 0;
978 for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) { 986 for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) {
979 if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) { 987 if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) {
980 nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 ); 988 nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 );
981 break; 989 break;
982 } 990 }
983 } 991 }
984 992
985 // Widget style 993 // Widget style
986 QString style = config.readEntry( "Style", "Light" ); 994 QString style = config.readEntry( "Style", "FlatStyle" );
987 995
988 // don't set a custom style 996 // don't set a custom style
989 if ( nostyle & Opie::Force_Style ) 997 if ( nostyle & Opie::Force_Style )
990 style = "Light"; 998 style = "FlatStyle";
991 999
992 internalSetStyle ( style ); 1000 internalSetStyle ( style );
993 1001
994 // Colors 1002 // Colors - from /etc/colors/Liquid.scheme
995 QColor bgcolor( config.readEntry( "Background", "#E5E1D5" ) ); 1003 QColor bgcolor( config.readEntry( "Background", "#E0E0E0" ) );
996 QColor btncolor( config.readEntry( "Button", "#D6CDBB" ) ); 1004 QColor btncolor( config.readEntry( "Button", "#96c8fa" ) );
997 QPalette pal( btncolor, bgcolor ); 1005 QPalette pal( btncolor, bgcolor );
998 QString color = config.readEntry( "Highlight", "#800000" ); 1006 QString color = config.readEntry( "Highlight", "#73adef" );
999 pal.setColor( QColorGroup::Highlight, QColor( color ) ); 1007 pal.setColor( QColorGroup::Highlight, QColor( color ) );
1000 color = config.readEntry( "HighlightedText", "#FFFFFF" ); 1008 color = config.readEntry( "HighlightedText", "#FFFFFF" );
1001 pal.setColor( QColorGroup::HighlightedText, QColor( color ) ); 1009 pal.setColor( QColorGroup::HighlightedText, QColor( color ) );
1002 color = config.readEntry( "Text", "#000000" ); 1010 color = config.readEntry( "Text", "#000000" );
1003 pal.setColor( QColorGroup::Text, QColor( color ) ); 1011 pal.setColor( QColorGroup::Text, QColor( color ) );
1004 color = config.readEntry( "ButtonText", "#000000" ); 1012 color = config.readEntry( "ButtonText", "#000000" );
1005 pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) ); 1013 pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor( color ) );
1006 color = config.readEntry( "Base", "#FFFFFF" ); 1014 color = config.readEntry( "Base", "#FFFFFF" );
1007 pal.setColor( QColorGroup::Base, QColor( color ) ); 1015 pal.setColor( QColorGroup::Base, QColor( color ) );
1008 1016
1009 pal.setColor( QPalette::Disabled, QColorGroup::Text, 1017 pal.setColor( QPalette::Disabled, QColorGroup::Text,
1010 pal.color( QPalette::Active, QColorGroup::Background ).dark() ); 1018 pal.color( QPalette::Active, QColorGroup::Background ).dark() );
1011 1019
1012 setPalette( pal, TRUE ); 1020 setPalette( pal, TRUE );
1013 1021
1014 // Window Decoration 1022 // Window Decoration
1015 QString dec = config.readEntry( "Decoration", "Qtopia" ); 1023 QString dec = config.readEntry( "Decoration", "Flat" );
1016 1024
1017 // don't set a custom deco 1025 // don't set a custom deco
1018 if ( nostyle & Opie::Force_Decoration ) 1026 if ( nostyle & Opie::Force_Decoration )
1019 dec = ""; 1027 dec = "";
1020 1028
1021 //qDebug ( "Setting Deco: %s -- old %s (%d)", dec.latin1(), d-> decorationName.latin1(), nostyle); 1029 //qDebug ( "Setting Deco: %s -- old %s (%d)", dec.latin1(), d-> decorationName.latin1(), nostyle);
1022 1030
1023 if ( dec != d->decorationName ) { 1031 if ( dec != d->decorationName ) {
1024 qwsSetDecoration( new QPEDecoration( dec ) ); 1032 qwsSetDecoration( new QPEDecoration( dec ) );
1025 d->decorationName = dec; 1033 d->decorationName = dec;
1026 } 1034 }
1027 1035
@@ -1289,36 +1297,42 @@ void QPEApplication::pidMessage( const QCString& msg, const QByteArray& data)
1289 emit reload(); 1297 emit reload();
1290 } 1298 }
1291 else if ( msg == "setDocument(QString)" ) { 1299 else if ( msg == "setDocument(QString)" ) {
1292 d->keep_running = TRUE; 1300 d->keep_running = TRUE;
1293 QDataStream stream( data, IO_ReadOnly ); 1301 QDataStream stream( data, IO_ReadOnly );
1294 QString doc; 1302 QString doc;
1295 stream >> doc; 1303 stream >> doc;
1296 QWidget *mw = mainWidget(); 1304 QWidget *mw = mainWidget();
1297 if ( !mw ) 1305 if ( !mw )
1298 mw = d->qpe_main_widget; 1306 mw = d->qpe_main_widget;
1299 if ( mw ) 1307 if ( mw )
1300 Global::setDocument( mw, doc ); 1308 Global::setDocument( mw, doc );
1301 } 1309 } else {
1302 else if ( msg == "nextView()" ) { 1310 bool p = d->keep_running;
1303 qDebug("got nextView()"); 1311 d->keep_running = FALSE;
1304 /*
1305 if ( raiseAppropriateWindow() )
1306 */
1307 emit appMessage( msg, data); 1312 emit appMessage( msg, data);
1313 if ( d->keep_running ) {
1314 d->notbusysent = FALSE;
1315 raiseAppropriateWindow();
1316 if ( !p ) {
1317 // Tell the system we're still chugging along...
1318#ifndef QT_NO_COP
1319 QCopEnvelope e("QPE/System", "appRaised(QString)");
1320 e << d->appName;
1321#endif
1308 } 1322 }
1309 else {
1310 emit appMessage( msg, data);
1311 } 1323 }
1312 1324 if ( p )
1325 d->keep_running = p;
1326 }
1313#endif 1327#endif
1314} 1328}
1315 1329
1316 1330
1317/*! 1331/*!
1318 Sets widget \a mw as the mainWidget() and shows it. For small windows, 1332 Sets widget \a mw as the mainWidget() and shows it. For small windows,
1319 consider passing TRUE for \a nomaximize rather than the default FALSE. 1333 consider passing TRUE for \a nomaximize rather than the default FALSE.
1320 1334
1321 \sa showMainDocumentWidget() 1335 \sa showMainDocumentWidget()
1322*/ 1336*/
1323void QPEApplication::showMainWidget( QWidget* mw, bool nomaximize ) 1337void QPEApplication::showMainWidget( QWidget* mw, bool nomaximize )
1324{ 1338{