summaryrefslogtreecommitdiff
authorzecke <zecke>2004-02-21 23:07:32 (UTC)
committer zecke <zecke>2004-02-21 23:07:32 (UTC)
commit57598b2a111ea924c5ad632cefb4ad7697c35759 (patch) (unidiff)
tree4f52a1dfad6ca25b6b52317c79b72753c8fe2264
parent4cfad0d1331a5e3adc8bc2599783750875e6fd2b (diff)
downloadopie-57598b2a111ea924c5ad632cefb4ad7697c35759.zip
opie-57598b2a111ea924c5ad632cefb4ad7697c35759.tar.gz
opie-57598b2a111ea924c5ad632cefb4ad7697c35759.tar.bz2
Unbreak fastloading. So the API Documentation is a lie..
showMainWidget may not setMainWidget because this would break Fastloading..
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 6f2e43b..c7ef2b7 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -427,25 +427,25 @@ static void setTreble( int t = 0, int percent = -1 )
427 if ( ( fd = open( "/dev/mixer", O_RDWR ) ) >= 0 ) { 427 if ( ( fd = open( "/dev/mixer", O_RDWR ) ) >= 0 ) {
428 ioctl( fd, MIXER_WRITE( SOUND_MIXER_TREBLE ), &treble ); 428 ioctl( fd, MIXER_WRITE( SOUND_MIXER_TREBLE ), &treble );
429 ::close( fd ); 429 ::close( fd );
430 } 430 }
431#endif 431#endif
432 } 432 }
433 break; 433 break;
434 } 434 }
435} 435}
436 436
437 437
438/** 438/**
439 \class QPEApplication 439 \class QPEApplication
440 \brief The QPEApplication class implements various system services 440 \brief The QPEApplication class implements various system services
441 that are available to all Qtopia applications. 441 that are available to all Qtopia applications.
442 442
443 Simply by using QPEApplication instead of QApplication, a standard Qt 443 Simply by using QPEApplication instead of QApplication, a standard Qt
444 application becomes a Qtopia application. It automatically follows 444 application becomes a Qtopia application. It automatically follows
445 style changes, quits and raises, and in the 445 style changes, quits and raises, and in the
446 case of \link docwidget.html document-oriented\endlink applications, 446 case of \link docwidget.html document-oriented\endlink applications,
447 changes the currently displayed document in response to the environment. 447 changes the currently displayed document in response to the environment.
448 448
449 To create a \link docwidget.html document-oriented\endlink 449 To create a \link docwidget.html document-oriented\endlink
450 application use showMainDocumentWidget(); to create a 450 application use showMainDocumentWidget(); to create a
451 non-document-oriented application use showMainWidget(). The 451 non-document-oriented application use showMainWidget(). The
@@ -726,48 +726,47 @@ QPEApplication::QPEApplication( int & argc, char **argv, Type t )
726 QPEMenuToolFocusManager::initialize(); 726 QPEMenuToolFocusManager::initialize();
727 727
728#ifdef QT_NO_QWS_CURSOR 728#ifdef QT_NO_QWS_CURSOR
729 // if we have no cursor, probably don't want tooltips 729 // if we have no cursor, probably don't want tooltips
730 QToolTip::setEnabled( FALSE ); 730 QToolTip::setEnabled( FALSE );
731#endif 731#endif
732} 732}
733 733
734 734
735#ifdef QTOPIA_INTERNAL_INITAPP 735#ifdef QTOPIA_INTERNAL_INITAPP
736void QPEApplication::initApp( int argc, char **argv ) 736void QPEApplication::initApp( int argc, char **argv )
737{ 737{
738 bool initial = pidChannel; // was set to 0 in the initializer
739 delete pidChannel; 738 delete pidChannel;
740 d->keep_running = TRUE; 739 d->keep_running = TRUE;
741 d->preloaded = FALSE; 740 d->preloaded = FALSE;
742 d->forceshow = FALSE; 741 d->forceshow = FALSE;
743 742
744 QCString channel = QCString(argv[0]); 743 QCString channel = QCString(argv[0]);
745 744
746 channel.replace(QRegExp(".*/"),""); 745 channel.replace(QRegExp(".*/"),"");
747 d->appName = channel; 746 d->appName = channel;
748 747
749 #if QT_VERSION > 235 748 #if QT_VERSION > 235
750 qt_fbdpy->setIdentity( channel ); // In Qt/E 2.3.6 749 qt_fbdpy->setIdentity( channel ); // In Qt/E 2.3.6
751 #endif 750 #endif
752 751
753 channel = "QPE/Application/" + channel; 752 channel = "QPE/Application/" + channel;
754 pidChannel = new QCopChannel( channel, this); 753 pidChannel = new QCopChannel( channel, this);
755 connect( pidChannel, SIGNAL(received(const QCString &, const QByteArray &)), 754 connect( pidChannel, SIGNAL(received(const QCString &, const QByteArray &)),
756 this, SLOT(pidMessage(const QCString &, const QByteArray &))); 755 this, SLOT(pidMessage(const QCString &, const QByteArray &)));
757 756
758 if (!initial) { 757
759 processQCopFile(); 758
760 d->keep_running = d->qcopq.isEmpty(); 759 processQCopFile();
761 } 760 d->keep_running = d->qcopq.isEmpty();
762 761
763 for (int a=0; a<argc; a++) { 762 for (int a=0; a<argc; a++) {
764 if ( qstrcmp(argv[a],"-preload")==0 ) { 763 if ( qstrcmp(argv[a],"-preload")==0 ) {
765 argv[a] = argv[a+1]; 764 argv[a] = argv[a+1];
766 a++; 765 a++;
767 d->preloaded = TRUE; 766 d->preloaded = TRUE;
768 argc-=1; 767 argc-=1;
769 } else if ( qstrcmp(argv[a],"-preload-show")==0 ) { 768 } else if ( qstrcmp(argv[a],"-preload-show")==0 ) {
770 argv[a] = argv[a+1]; 769 argv[a] = argv[a+1];
771 a++; 770 a++;
772 d->preloaded = TRUE; 771 d->preloaded = TRUE;
773 d->forceshow = TRUE; 772 d->forceshow = TRUE;
@@ -1562,46 +1561,46 @@ void QPEApplication::pidMessage( const QCString& msg, const QByteArray& data)
1562#endif 1561#endif
1563} 1562}
1564 1563
1565 1564
1566/*! 1565/*!
1567 Sets widget \a mw as the mainWidget() and shows it. For small windows, 1566 Sets widget \a mw as the mainWidget() and shows it. For small windows,
1568 consider passing TRUE for \a nomaximize rather than the default FALSE. 1567 consider passing TRUE for \a nomaximize rather than the default FALSE.
1569 1568
1570 \sa showMainDocumentWidget() 1569 \sa showMainDocumentWidget()
1571*/ 1570*/
1572void QPEApplication::showMainWidget( QWidget* mw, bool nomaximize ) 1571void QPEApplication::showMainWidget( QWidget* mw, bool nomaximize )
1573{ 1572{
1574 setMainWidget(mw); 1573 // setMainWidget(mw); this breaks FastLoading because lastWindowClose() would quit
1575 d->show(mw, nomaximize ); 1574 d->show(mw, nomaximize );
1576} 1575}
1577 1576
1578/*! 1577/*!
1579 Sets widget \a mw as the mainWidget() and shows it. For small windows, 1578 Sets widget \a mw as the mainWidget() and shows it. For small windows,
1580 consider passing TRUE for \a nomaximize rather than the default FALSE. 1579 consider passing TRUE for \a nomaximize rather than the default FALSE.
1581 1580
1582 This calls designates the application as 1581 This calls designates the application as
1583 a \link docwidget.html document-oriented\endlink application. 1582 a \link docwidget.html document-oriented\endlink application.
1584 1583
1585 The \a mw widget \e must have this slot: setDocument(const QString&). 1584 The \a mw widget \e must have this slot: setDocument(const QString&).
1586 1585
1587 \sa showMainWidget() 1586 \sa showMainWidget()
1588*/ 1587*/
1589void QPEApplication::showMainDocumentWidget( QWidget* mw, bool nomaximize ) 1588void QPEApplication::showMainDocumentWidget( QWidget* mw, bool nomaximize )
1590{ 1589{
1591 if ( mw && argc() == 2 ) 1590 if ( mw && argc() == 2 )
1592 Global::setDocument( mw, QString::fromUtf8(argv()[1]) ); 1591 Global::setDocument( mw, QString::fromUtf8(argv()[1]) );
1593 1592
1594 1593
1595 setMainWidget(mw); 1594 //setMainWidget(mw); see above
1596 d->show(mw, nomaximize ); 1595 d->show(mw, nomaximize );
1597} 1596}
1598 1597
1599 1598
1600/*! 1599/*!
1601 If an application is started via a \link qcop.html QCop\endlink 1600 If an application is started via a \link qcop.html QCop\endlink
1602 message, the application will process the \link qcop.html 1601 message, the application will process the \link qcop.html
1603 QCop\endlink message and then quit. If the application calls this 1602 QCop\endlink message and then quit. If the application calls this
1604 function while processing a \link qcop.html QCop\endlink message, 1603 function while processing a \link qcop.html QCop\endlink message,
1605 after processing its outstanding \link qcop.html QCop\endlink 1604 after processing its outstanding \link qcop.html QCop\endlink
1606 messages the application will start 'properly' and show itself. 1605 messages the application will start 'properly' and show itself.
1607 1606