-rw-r--r-- | library/Makefile.in | 26 | ||||
-rw-r--r-- | library/global.cpp | 2 | ||||
-rw-r--r-- | library/library.pro | 4 | ||||
-rw-r--r-- | library/qpeapplication.cpp | 4 |
4 files changed, 17 insertions, 19 deletions
diff --git a/library/Makefile.in b/library/Makefile.in index c89390f..b74b818 100644 --- a/library/Makefile.in +++ b/library/Makefile.in @@ -1,201 +1,201 @@ ############################################################################# ####### Compiler, tools and options CXX = $(SYSCONF_CXX) $(QT_CXX_MT) CXXFLAGS= $(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS) $(SYSCONF_CXXFLAGS_LIB) CC = $(SYSCONF_CC) $(QT_C_MT) CFLAGS = $(SYSCONF_CFLAGS) $(SYSCONF_CFLAGS_LIB) -INCPATH = -I$(QPEDIR)/include -Ibackend +INCPATH = -I$(OPIEDIR)/include -Ibackend LFLAGS = $(SYSCONF_LFLAGS_QT) $(SYSCONF_RPATH_QT) $(SYSCONF_LFLAGS) $(QT_LFLAGS_MT) LIBS = $(SUBLIBS) -ldl -lcrypt -lm $(SYSCONF_LIBS_QT) $(SYSCONF_LIBS_QTAPP) MOC = $(SYSCONF_MOC) UIC = $(SYSCONF_UIC) ####### Target DESTDIR = $(QTDIR)/lib$(PROJMAK)/ VER_MAJ = 1 VER_MIN = 5 VER_PATCH = 0 TARGET = qpe TARGET1 = lib$(TARGET).so.$(VER_MAJ) ####### Files HEADERS = calendar.h \ global.h \ resource.h \ xmlreader.h \ mimetype.h \ menubutton.h \ network.h \ networkinterface.h \ proxies.h \ filemanager.h \ fontmanager.h \ qdawg.h \ datebookmonth.h \ fileselector.h \ imageedit.h \ qcopenvelope_qws.h \ qpedecoration_qws.h \ qpeapplication.h \ qpestyle.h \ qpedialog.h \ lightstyle.h \ config.h \ applnk.h \ sound.h \ tzselect.h \ qmath.h \ datebookdb.h \ alarmserver.h \ process.h \ password.h \ timestring.h \ fontfactoryinterface.h \ fontdatabase.h \ power.h \ storage.h \ qpemessagebox.h \ backend/timeconversion.h \ qpedebug.h \ qpemenubar.h \ qpetoolbar.h \ backend/categories.h \ backend/stringutil.h \ backend/palmtopuid.h \ backend/palmtoprecord.h \ backend/task.h \ backend/event.h \ backend/contact.h \ categorymenu.h \ categoryedit_p.h \ categoryselect.h \ categorywidget.h \ ir.h \ backend/vobject_p.h \ findwidget_p.h \ finddialog.h \ lnkproperties.h \ quuid.h \ qcom.h \ qlibrary.h \ qlibrary_p.h \ qprocess.h SOURCES = calendar.cpp \ global.cpp \ xmlreader.cpp \ mimetype.cpp \ menubutton.cpp \ network.cpp \ networkinterface.cpp \ proxies.cpp \ filemanager.cpp \ fontmanager.cpp \ qdawg.cpp \ datebookmonth.cpp \ fileselector.cpp \ imageedit.cpp \ resource.cpp \ qpedecoration_qws.cpp \ qcopenvelope_qws.cpp \ qpeapplication.cpp \ qpestyle.cpp \ qpedialog.cpp \ lightstyle.cpp \ config.cpp \ applnk.cpp \ sound.cpp \ tzselect.cpp \ qmath.c \ datebookdb.cpp \ alarmserver.cpp \ password.cpp \ process.cpp \ process_unix.cpp \ timestring.cpp \ fontdatabase.cpp \ power.cpp \ storage.cpp \ qpemessagebox.cpp \ backend/timeconversion.cpp \ qpedebug.cpp \ qpemenubar.cpp \ qpetoolbar.cpp \ backend/categories.cpp \ backend/stringutil.cpp \ backend/palmtoprecord.cpp \ backend/task.cpp \ backend/event.cpp \ backend/contact.cpp \ categorymenu.cpp \ categoryedit_p.cpp \ categoryselect.cpp \ categorywidget.cpp \ ir.cpp \ backend/vcc_yacc.cpp \ backend/vobject.cpp \ findwidget_p.cpp \ finddialog.cpp \ lnkproperties.cpp \ quuid.cpp \ qlibrary.cpp \ qlibrary_unix.cpp \ qprocess.cpp \ qprocess_unix.cpp OBJECTS = calendar.o \ global.o \ xmlreader.o \ mimetype.o \ menubutton.o \ network.o \ networkinterface.o \ proxies.o \ filemanager.o \ fontmanager.o \ qdawg.o \ datebookmonth.o \ fileselector.o \ imageedit.o \ resource.o \ qpedecoration_qws.o \ qcopenvelope_qws.o \ qpeapplication.o \ qpestyle.o \ qpedialog.o \ lightstyle.o \ config.o \ applnk.o \ sound.o \ tzselect.o \ qmath.o \ datebookdb.o \ alarmserver.o \ password.o \ process.o \ process_unix.o \ timestring.o \ fontdatabase.o \ power.o \ storage.o \ qpemessagebox.o \ backend/timeconversion.o \ qpedebug.o \ qpemenubar.o \ qpetoolbar.o \ backend/categories.o \ backend/stringutil.o \ backend/palmtoprecord.o \ backend/task.o \ backend/event.o \ backend/contact.o \ categorymenu.o \ categoryedit_p.o \ categoryselect.o \ categorywidget.o \ ir.o \ backend/vcc_yacc.o \ backend/vobject.o \ findwidget_p.o \ @@ -268,620 +268,618 @@ OBJMOC = moc_menubutton.o \ moc_qpedecoration_qws.o \ moc_qpeapplication.o \ moc_qpedialog.o \ moc_tzselect.o \ moc_process.o \ moc_storage.o \ moc_qpemenubar.o \ moc_qpetoolbar.o \ backend/moc_categories.o \ moc_categorymenu.o \ moc_categoryedit_p.o \ moc_categoryselect.o \ moc_ir.o \ moc_findwidget_p.o \ moc_finddialog.o \ moc_lnkproperties.o \ moc_qlibrary_p.o \ moc_qprocess.o \ moc_passwordbase_p.o \ moc_proxiesbase_p.o \ moc_categoryeditbase_p.o \ moc_findwidgetbase_p.o \ moc_lnkpropertiesbase_p.o ####### Implicit rules .SUFFIXES: .cpp .cxx .cc .C .c .cpp.o: $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< .cxx.o: $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< .cc.o: $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< .C.o: $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< .c.o: $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $< ####### Build rules all: $(DESTDIR)$(SYSCONF_LINK_TARGET) $(DESTDIR)$(SYSCONF_LINK_TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC) $(SUBLIBS) $(SYSCONF_LINK_LIB) moc: $(SRCMOC) tmake: tmake library.pro clean: -rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS) -rm -f *~ core -rm -f allmoc.cpp ####### Extension Modules listpromodules: @echo listallmodules: @echo listaddonpromodules: @echo listaddonentmodules: @echo REQUIRES= ####### Sub-libraries ###### Combined headers ####### Compile calendar.o: calendar.cpp \ calendar.h global.o: global.cpp \ global.moc xmlreader.o: xmlreader.cpp \ xmlreader.h mimetype.o: mimetype.cpp \ mimetype.h \ applnk.h \ resource.h \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h menubutton.o: menubutton.cpp \ menubutton.h network.o: network.cpp \ network.moc networkinterface.o: networkinterface.cpp \ networkinterface.h \ network.h \ config.h proxies.o: proxies.cpp \ proxies.h \ config.h \ proxiesbase_p.h filemanager.o: filemanager.cpp \ filemanager.h \ applnk.h fontmanager.o: fontmanager.cpp \ fontmanager.h qdawg.o: qdawg.cpp \ qdawg.h datebookmonth.o: datebookmonth.cpp \ config.h \ datebookmonth.h \ calendar.h \ timestring.h \ datebookdb.h \ resource.h \ qpeapplication.h \ qpedecoration_qws.h fileselector.o: fileselector.cpp \ fileselector.h \ filemanager.h \ applnk.h \ global.h \ resource.h \ config.h \ storage.h \ qpemenubar.h \ lnkproperties.h \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h \ categorymenu.h imageedit.o: imageedit.cpp \ imageedit.h resource.o: resource.cpp \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h \ resource.h \ inlinepics_p.h qpedecoration_qws.o: qpedecoration_qws.cpp \ qcopenvelope_qws.h \ qpedecoration_qws.h \ qpeapplication.h \ timestring.h \ resource.h \ global.h qcopenvelope_qws.o: qcopenvelope_qws.cpp \ qcopenvelope_qws.h \ global.h qpeapplication.o: qpeapplication.cpp \ qcopenvelope_qws.h \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h \ qpestyle.h \ lightstyle.h \ global.h \ resource.h \ config.h \ network.h \ fontmanager.h \ power.h \ alarmserver.h \ - applnk.h + applnk.h \ + qpemenubar.h qpestyle.o: qpestyle.cpp \ qpestyle.h \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h qpedialog.o: qpedialog.cpp \ qpedialog.h \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h lightstyle.o: lightstyle.cpp \ lightstyle.h config.o: config.cpp \ config.h applnk.o: applnk.cpp \ applnk.h sound.o: sound.cpp tzselect.o: tzselect.cpp \ tzselect.h \ resource.h \ global.h \ config.h qmath.o: qmath.c \ qmath.h datebookdb.o: datebookdb.cpp \ datebookdb.h alarmserver.o: alarmserver.cpp \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h \ global.h \ resource.h \ qcopenvelope_qws.h \ alarmserver.h password.o: password.cpp \ password.moc \ password.h \ config.h \ global.h \ backend/contact.h \ passwordbase_p.h process.o: process.cpp \ process.h process_unix.o: process_unix.cpp \ process_unix.moc \ process.h timestring.o: timestring.cpp \ timestring.moc \ timestring.h \ qpeapplication.h \ qpedecoration_qws.h \ config.h fontdatabase.o: fontdatabase.cpp \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h \ fontfactoryinterface.h \ fontdatabase.h power.o: power.cpp \ - power.h + power.h \ + custom.h storage.o: storage.cpp qpemessagebox.o: qpemessagebox.cpp \ qpemessagebox.h backend/timeconversion.o: backend/timeconversion.cpp \ backend/timeconversion.h qpedebug.o: qpedebug.cpp \ qpedebug.h qpemenubar.o: qpemenubar.cpp \ qpemenubar.h qpetoolbar.o: qpetoolbar.cpp \ qpetoolbar.h \ qpemenubar.h backend/categories.o: backend/categories.cpp \ backend/categories.h \ backend/qpcglobal.h \ backend/palmtopuidgen.h \ backend/stringutil.h backend/stringutil.o: backend/stringutil.cpp \ backend/stringutil.h \ backend/qpcglobal.h backend/palmtoprecord.o: backend/palmtoprecord.cpp \ backend/palmtoprecord.h \ backend/qpcglobal.h \ backend/palmtopuidgen.h \ backend/stringutil.h backend/task.o: backend/task.cpp \ backend/vobject_p.h \ backend/timeconversion.h \ backend/qfiledirect_p.h backend/event.o: backend/event.cpp \ backend/event.h \ backend/qfiledirect_p.h \ backend/vobject_p.h backend/contact.o: backend/contact.cpp \ backend/contact.h \ backend/vobject_p.h \ backend/qfiledirect_p.h categorymenu.o: categorymenu.cpp \ categorymenu.h \ backend/categories.h \ backend/qpcglobal.h \ backend/palmtopuidgen.h \ categoryselect.h categoryedit_p.o: categoryedit_p.cpp \ categoryedit_p.h \ categoryeditbase_p.h categoryselect.o: categoryselect.cpp \ categorywidget.h \ categoryselect.h categorywidget.o: categorywidget.cpp \ categoryedit_p.h \ categoryeditbase_p.h \ categorywidget.h ir.o: ir.cpp \ ir.h \ qcopenvelope_qws.h \ applnk.h backend/vcc_yacc.o: backend/vcc_yacc.cpp \ - backend/vobject_p.h + backend/vobject_p.h \ + backend/qfiledirect_p.h backend/vobject.o: backend/vobject.cpp \ backend/vobject_p.h \ backend/qfiledirect_p.h findwidget_p.o: findwidget_p.cpp \ findwidget_p.h \ findwidgetbase_p.h finddialog.o: finddialog.cpp \ finddialog.h \ findwidget_p.h \ findwidgetbase_p.h lnkproperties.o: lnkproperties.cpp \ lnkproperties.h \ lnkpropertiesbase_p.h \ ir.h quuid.o: quuid.cpp \ quuid.h qlibrary.o: qlibrary.cpp \ qlibrary_p.h \ qlibrary.h qlibrary_unix.o: qlibrary_unix.cpp \ qlibrary_p.h \ qlibrary.h qprocess.o: qprocess.cpp \ qprocess.h qprocess_unix.o: qprocess_unix.cpp \ qprocess_unix.moc \ qprocess.h \ qcleanuphandler_p.h passwordbase_p.h: passwordbase_p.ui $(UIC) passwordbase_p.ui -o $(INTERFACE_DECL_PATH)/passwordbase_p.h passwordbase_p.cpp: passwordbase_p.ui $(UIC) passwordbase_p.ui -i passwordbase_p.h -o passwordbase_p.cpp proxiesbase_p.h: proxiesbase_p.ui $(UIC) proxiesbase_p.ui -o $(INTERFACE_DECL_PATH)/proxiesbase_p.h proxiesbase_p.cpp: proxiesbase_p.ui $(UIC) proxiesbase_p.ui -i proxiesbase_p.h -o proxiesbase_p.cpp categoryeditbase_p.h: categoryeditbase_p.ui $(UIC) categoryeditbase_p.ui -o $(INTERFACE_DECL_PATH)/categoryeditbase_p.h categoryeditbase_p.cpp: categoryeditbase_p.ui $(UIC) categoryeditbase_p.ui -i categoryeditbase_p.h -o categoryeditbase_p.cpp findwidgetbase_p.h: findwidgetbase_p.ui $(UIC) findwidgetbase_p.ui -o $(INTERFACE_DECL_PATH)/findwidgetbase_p.h findwidgetbase_p.cpp: findwidgetbase_p.ui $(UIC) findwidgetbase_p.ui -i findwidgetbase_p.h -o findwidgetbase_p.cpp lnkpropertiesbase_p.h: lnkpropertiesbase_p.ui $(UIC) lnkpropertiesbase_p.ui -o $(INTERFACE_DECL_PATH)/lnkpropertiesbase_p.h lnkpropertiesbase_p.cpp: lnkpropertiesbase_p.ui $(UIC) lnkpropertiesbase_p.ui -i lnkpropertiesbase_p.h -o lnkpropertiesbase_p.cpp -passwordbase_p.o: passwordbase_p.cpp \ - passwordbase_p.h +passwordbase_p.o: passwordbase_p.cpp -proxiesbase_p.o: proxiesbase_p.cpp \ - proxiesbase_p.h +proxiesbase_p.o: proxiesbase_p.cpp -categoryeditbase_p.o: categoryeditbase_p.cpp \ - categoryeditbase_p.h +categoryeditbase_p.o: categoryeditbase_p.cpp -findwidgetbase_p.o: findwidgetbase_p.cpp \ - findwidgetbase_p.h +findwidgetbase_p.o: findwidgetbase_p.cpp -lnkpropertiesbase_p.o: lnkpropertiesbase_p.cpp \ - lnkpropertiesbase_p.h +lnkpropertiesbase_p.o: lnkpropertiesbase_p.cpp moc_menubutton.o: moc_menubutton.cpp \ menubutton.h moc_proxies.o: moc_proxies.cpp \ proxies.h \ config.h moc_datebookmonth.o: moc_datebookmonth.cpp \ datebookmonth.h \ calendar.h \ timestring.h moc_fileselector.o: moc_fileselector.cpp \ fileselector.h \ filemanager.h \ applnk.h moc_imageedit.o: moc_imageedit.cpp \ imageedit.h moc_qpedecoration_qws.o: moc_qpedecoration_qws.cpp \ qpedecoration_qws.h moc_qpeapplication.o: moc_qpeapplication.cpp \ qpeapplication.h \ qpedecoration_qws.h \ timestring.h moc_qpedialog.o: moc_qpedialog.cpp \ qpedialog.h moc_tzselect.o: moc_tzselect.cpp \ tzselect.h moc_process.o: moc_process.cpp \ process.h moc_storage.o: moc_storage.cpp \ storage.h moc_qpemenubar.o: moc_qpemenubar.cpp \ qpemenubar.h moc_qpetoolbar.o: moc_qpetoolbar.cpp \ qpetoolbar.h backend/moc_categories.o: backend/moc_categories.cpp \ backend/categories.h \ backend/qpcglobal.h \ backend/palmtopuidgen.h moc_categorymenu.o: moc_categorymenu.cpp \ categorymenu.h moc_categoryedit_p.o: moc_categoryedit_p.cpp \ categoryedit_p.h \ categoryeditbase_p.h moc_categoryselect.o: moc_categoryselect.cpp \ categoryselect.h moc_ir.o: moc_ir.cpp \ ir.h moc_findwidget_p.o: moc_findwidget_p.cpp \ findwidget_p.h \ findwidgetbase_p.h moc_finddialog.o: moc_finddialog.cpp \ finddialog.h moc_lnkproperties.o: moc_lnkproperties.cpp \ lnkproperties.h moc_qlibrary_p.o: moc_qlibrary_p.cpp \ qlibrary_p.h \ qlibrary.h moc_qprocess.o: moc_qprocess.cpp \ qprocess.h moc_passwordbase_p.o: global.moc \ global.cpp moc_proxiesbase_p.o: network.moc \ network.cpp moc_categoryeditbase_p.o: password.moc \ password.cpp \ password.h \ config.h \ global.h \ backend/contact.h \ passwordbase_p.h moc_findwidgetbase_p.o: process_unix.moc \ process_unix.cpp \ process.h moc_lnkpropertiesbase_p.o: timestring.moc \ timestring.cpp \ timestring.h \ qpeapplication.h \ qpedecoration_qws.h \ config.h moc_menubutton.cpp: menubutton.h $(MOC) menubutton.h -o moc_menubutton.cpp moc_proxies.cpp: proxies.h $(MOC) proxies.h -o moc_proxies.cpp moc_datebookmonth.cpp: datebookmonth.h $(MOC) datebookmonth.h -o moc_datebookmonth.cpp moc_fileselector.cpp: fileselector.h $(MOC) fileselector.h -o moc_fileselector.cpp moc_imageedit.cpp: imageedit.h $(MOC) imageedit.h -o moc_imageedit.cpp moc_qpedecoration_qws.cpp: qpedecoration_qws.h $(MOC) qpedecoration_qws.h -o moc_qpedecoration_qws.cpp moc_qpeapplication.cpp: qpeapplication.h $(MOC) qpeapplication.h -o moc_qpeapplication.cpp moc_qpedialog.cpp: qpedialog.h $(MOC) qpedialog.h -o moc_qpedialog.cpp moc_tzselect.cpp: tzselect.h $(MOC) tzselect.h -o moc_tzselect.cpp moc_process.cpp: process.h $(MOC) process.h -o moc_process.cpp moc_storage.cpp: storage.h $(MOC) storage.h -o moc_storage.cpp moc_qpemenubar.cpp: qpemenubar.h $(MOC) qpemenubar.h -o moc_qpemenubar.cpp moc_qpetoolbar.cpp: qpetoolbar.h $(MOC) qpetoolbar.h -o moc_qpetoolbar.cpp backend/moc_categories.cpp: backend/categories.h $(MOC) backend/categories.h -o backend/moc_categories.cpp moc_categorymenu.cpp: categorymenu.h $(MOC) categorymenu.h -o moc_categorymenu.cpp moc_categoryedit_p.cpp: categoryedit_p.h $(MOC) categoryedit_p.h -o moc_categoryedit_p.cpp moc_categoryselect.cpp: categoryselect.h $(MOC) categoryselect.h -o moc_categoryselect.cpp moc_ir.cpp: ir.h $(MOC) ir.h -o moc_ir.cpp moc_findwidget_p.cpp: findwidget_p.h $(MOC) findwidget_p.h -o moc_findwidget_p.cpp moc_finddialog.cpp: finddialog.h $(MOC) finddialog.h -o moc_finddialog.cpp moc_lnkproperties.cpp: lnkproperties.h $(MOC) lnkproperties.h -o moc_lnkproperties.cpp moc_qlibrary_p.cpp: qlibrary_p.h $(MOC) qlibrary_p.h -o moc_qlibrary_p.cpp moc_qprocess.cpp: qprocess.h $(MOC) qprocess.h -o moc_qprocess.cpp global.moc: global.cpp $(MOC) global.cpp -o global.moc network.moc: network.cpp $(MOC) network.cpp -o network.moc password.moc: password.cpp $(MOC) password.cpp -o password.moc process_unix.moc: process_unix.cpp $(MOC) process_unix.cpp -o process_unix.moc timestring.moc: timestring.cpp $(MOC) timestring.cpp -o timestring.moc qprocess_unix.moc: qprocess_unix.cpp diff --git a/library/global.cpp b/library/global.cpp index e1bbf3e..e5fc2b3 100644 --- a/library/global.cpp +++ b/library/global.cpp @@ -1,329 +1,329 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #include <qpe/qpedebug.h> #include <qpe/global.h> #include <qpe/qdawg.h> #include <qpe/qpeapplication.h> #include <qpe/resource.h> #include <qpe/storage.h> #include <qpe/applnk.h> #if defined(Q_WS_QWS) && !defined(QT_NO_COP) #include "qpe/qcopenvelope_qws.h" #endif #include <qfile.h> #include <qlabel.h> #include <qtimer.h> #include <qmap.h> #include <qdict.h> #include <qdir.h> #include <qmessagebox.h> #include <qregexp.h> #include <stdlib.h> #include <sys/stat.h> #include <sys/wait.h> #include <sys/types.h> #include <fcntl.h> #include <unistd.h> #include <qwindowsystem_qws.h> // for qwsServer #include <qdatetime.h> //#include "quickexec_p.h" class Emitter : public QObject { Q_OBJECT public: Emitter( QWidget* receiver, const QString& document ) { connect(this, SIGNAL(setDocument(const QString&)), receiver, SLOT(setDocument(const QString&))); emit setDocument(document); disconnect(this, SIGNAL(setDocument(const QString&)), receiver, SLOT(setDocument(const QString&))); } signals: void setDocument(const QString&); }; class StartingAppList : public QObject { Q_OBJECT public: static void add( const QString& name ); static bool isStarting( const QString name ); private slots: void handleNewChannel( const QString &); private: StartingAppList( QObject *parent=0, const char* name=0 ) ; QDict<QTime> dict; static StartingAppList *appl; }; StartingAppList* StartingAppList::appl = 0; StartingAppList::StartingAppList( QObject *parent, const char* name ) :QObject( parent, name ) { #if QT_VERSION >= 232 && !defined(QT_NO_COP) connect( qwsServer, SIGNAL( newChannel(const QString&)), this, SLOT( handleNewChannel(const QString&)) ); dict.setAutoDelete( TRUE ); #endif } void StartingAppList::add( const QString& name ) { #if QT_VERSION >= 232 && !defined(QT_NO_COP) if ( !appl ) appl = new StartingAppList; QTime *t = new QTime; t->start(); appl->dict.insert( "QPE/Application/" + name, t ); #endif } bool StartingAppList::isStarting( const QString name ) { #if QT_VERSION >= 232 && !defined(QT_NO_COP) if ( appl ) { QTime *t = appl->dict.find( "QPE/Application/" + name ); if ( !t ) return FALSE; if ( t->elapsed() > 10000 ) { // timeout in case of crash or something appl->dict.remove( "QPE/Application/" + name ); return FALSE; } return TRUE; } #endif return FALSE; } void StartingAppList::handleNewChannel( const QString & name ) { #if QT_VERSION >= 232 && !defined(QT_NO_COP) dict.remove( name ); #endif } static bool docDirCreated = FALSE; static QDawg* fixed_dawg = 0; static QDict<QDawg> *named_dawg = 0; static QString qpeDir() { - QString dir = getenv("QPEDIR"); + QString dir = getenv("OPIEDIR"); if ( dir.isEmpty() ) dir = ".."; return dir; } static QString dictDir() { return qpeDir() + "/etc/dict"; } /*! \class Global global.h \brief The Global class collects application-wide global functions. */ /*! \internal */ Global::Global() { } /*! Returns the unchangeable QDawg that contains general words for the current locale. \sa addedDawg() */ const QDawg& Global::fixedDawg() { if ( !fixed_dawg ) { if ( !docDirCreated ) createDocDir(); fixed_dawg = new QDawg; QString dawgfilename = dictDir() + "/dawg"; QString lang = getenv( "LANG" ); QString dawgfilename_lang = dawgfilename + "." + lang; QString words_lang = dictDir() + "/words." + lang; if ( QFile::exists(dawgfilename_lang) || QFile::exists(words_lang) ) dawgfilename = dawgfilename_lang; QFile dawgfile(dawgfilename); if ( !dawgfile.exists() ) { QString fn = dictDir() + "/words"; if ( QFile::exists(words_lang) ) fn = words_lang; QFile in(fn); if ( in.open(IO_ReadOnly) ) { fixed_dawg->createFromWords(&in); dawgfile.open(IO_WriteOnly); fixed_dawg->write(&dawgfile); dawgfile.close(); } } else { fixed_dawg->readFile(dawgfilename); } } return *fixed_dawg; } /*! Returns the changeable QDawg that contains general words for the current locale. \sa fixedDawg() */ const QDawg& Global::addedDawg() { return dawg("local"); } /*! Returns the QDawg with the given \a name. This is an application-specific word list. \a name should not contain "/". */ const QDawg& Global::dawg(const QString& name) { createDocDir(); if ( !named_dawg ) named_dawg = new QDict<QDawg>; QDawg* r = named_dawg->find(name); if ( !r ) { r = new QDawg; named_dawg->insert(name,r); QString dawgfilename = dictDir() + "/" + name + ".dawg"; QFile dawgfile(dawgfilename); if ( dawgfile.open(IO_ReadOnly) ) r->readFile(dawgfilename); } return *r; } /*! Adds \a wordlist to the addedDawg(). */ void Global::addWords(const QStringList& wordlist) { addWords("local",wordlist); } /*! Adds \a wordlist to the dawg() named \a dictname. */ void Global::addWords(const QString& dictname, const QStringList& wordlist) { QDawg& d = (QDawg&)dawg(dictname); QStringList all = d.allWords() + wordlist; d.createFromWords(all); QString dawgfilename = dictDir() + "/" + dictname + ".dawg"; QFile dawgfile(dawgfilename); if ( dawgfile.open(IO_WriteOnly) ) { d.write(&dawgfile); dawgfile.close(); } // #### Re-read the dawg here if we use mmap(). // #### Signal other processes to re-read. } /*! Returns a full path for the application named \a appname, with the given \a filename or QString::null if there was a problem creating the directory tree for \a appname. If \a filename contains "/", it is the caller's responsibility to ensure those directories exist. */ QString Global::applicationFileName(const QString& appname, const QString& filename) { QDir d; QString r = getenv("HOME"); r += "/Applications/"; if ( !QFile::exists( r ) ) if ( d.mkdir(r) == false ) return QString::null; r += appname; if ( !QFile::exists( r ) ) if ( d.mkdir(r) == false ) return QString::null; r += "/"; r += filename; return r; } /*! \internal */ void Global::createDocDir() { if ( !docDirCreated ) { docDirCreated = TRUE; mkdir( QPEApplication::documentDir().latin1(), 0755 ); } } /*! Displays a status \a message to the user. This generally appears in the taskbar for some amount of time, then disappears. */ void Global::statusMessage(const QString& message) { #if defined(Q_WS_QWS) && !defined(QT_NO_COP) QCopEnvelope e( "QPE/TaskBar", "message(QString)" ); e << message; #endif } /*! \internal */ void Global::applyStyle() { #if defined(Q_WS_QWS) && !defined(QT_NO_COP) QCopChannel::send( "QPE/System", "applyStyle()" ); #else ((QPEApplication *)qApp)->applyStyle(); // apply without needing QCop for floppy version #endif } /*! \internal */ QWidget *Global::shutdown( bool ) { #if defined(Q_WS_QWS) && !defined(QT_NO_COP) QCopChannel::send( "QPE/System", "shutdown()" ); diff --git a/library/library.pro b/library/library.pro index 06dfc8f..058d216 100644 --- a/library/library.pro +++ b/library/library.pro @@ -1,132 +1,132 @@ TEMPLATE = lib CONFIG += qt warn_on release HEADERS = calendar.h \ global.h \ resource.h \ xmlreader.h \ mimetype.h \ menubutton.h \ network.h \ networkinterface.h \ proxies.h \ filemanager.h \ fontmanager.h \ qdawg.h \ datebookmonth.h \ fileselector.h \ imageedit.h \ qcopenvelope_qws.h \ qpedecoration_qws.h \ qpeapplication.h \ qpestyle.h \ qpedialog.h \ lightstyle.h \ config.h \ applnk.h \ sound.h \ tzselect.h \ qmath.h \ datebookdb.h \ alarmserver.h \ process.h \ password.h \ timestring.h \ fontfactoryinterface.h \ fontdatabase.h \ power.h \ storage.h \ qpemessagebox.h \ backend/timeconversion.h \ qpedebug.h \ qpemenubar.h \ qpetoolbar.h \ backend/categories.h \ backend/stringutil.h \ backend/palmtopuid.h \ backend/palmtoprecord.h \ backend/task.h \ backend/event.h \ backend/contact.h\ categorymenu.h \ categoryedit_p.h \ categoryselect.h \ categorywidget.h \ ir.h \ backend/vobject_p.h \ findwidget_p.h \ finddialog.h \ lnkproperties.h SOURCES = calendar.cpp \ global.cpp \ xmlreader.cpp \ mimetype.cpp \ menubutton.cpp \ network.cpp \ networkinterface.cpp \ proxies.cpp \ filemanager.cpp \ fontmanager.cpp \ qdawg.cpp \ datebookmonth.cpp \ fileselector.cpp \ imageedit.cpp \ resource.cpp \ qpedecoration_qws.cpp \ qcopenvelope_qws.cpp \ qpeapplication.cpp \ qpestyle.cpp \ qpedialog.cpp \ lightstyle.cpp \ config.cpp \ applnk.cpp \ sound.cpp \ tzselect.cpp \ qmath.c \ datebookdb.cpp \ alarmserver.cpp \ password.cpp \ process.cpp \ process_unix.cpp \ timestring.cpp \ fontdatabase.cpp \ power.cpp \ storage.cpp \ qpemessagebox.cpp \ backend/timeconversion.cpp \ qpedebug.cpp \ qpemenubar.cpp \ qpetoolbar.cpp \ backend/categories.cpp \ backend/stringutil.cpp \ backend/palmtoprecord.cpp \ backend/task.cpp \ backend/event.cpp \ backend/contact.cpp \ categorymenu.cpp \ categoryedit_p.cpp \ categoryselect.cpp \ categorywidget.cpp \ ir.cpp \ backend/vcc_yacc.cpp \ backend/vobject.cpp \ findwidget_p.cpp \ finddialog.cpp \ lnkproperties.cpp # Qt 3 compatibility qt2:HEADERS += quuid.h qcom.h qlibrary.h qlibrary_p.h qprocess.h qt2:SOURCES += quuid.cpp qlibrary.cpp qlibrary_unix.cpp qprocess.cpp \ qprocess_unix.cpp -INCLUDEPATH += $(QPEDIR)/include backend +INCLUDEPATH += $(OPIEDIR)/include backend LIBS += -ldl -lcrypt -lm INTERFACES = passwordbase_p.ui proxiesbase_p.ui categoryeditbase_p.ui findwidgetbase_p.ui lnkpropertiesbase_p.ui TARGET = qpe DESTDIR = $(QTDIR)/lib$(PROJMAK) -# This is set by configure$(QPEDIR). +# This is set by configure$(OPIEDIR). VERSION = 1.5.0 TRANSLATIONS = ../i18n/de/libqpe.ts diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp index f0a68cf..70ffec1 100644 --- a/library/qpeapplication.cpp +++ b/library/qpeapplication.cpp @@ -601,389 +601,389 @@ static void createInputMethodDict() \sa setInputMethodHint() */ QPEApplication::InputMethodHint QPEApplication::inputMethodHint( QWidget* w ) { if ( inputMethodDict && w ) return (InputMethodHint)(int)inputMethodDict->find(w); return Normal; } /*! \enum QPEApplication::InputMethodHint \value Normal the application sometimes needs text input (the default). \value AlwaysOff the application never needs text input. \value AlwaysOn the application always needs text input. */ /*! Hints to the system that \a w has use for text input methods as specified by \a mode. \sa inputMethodHint() */ void QPEApplication::setInputMethodHint( QWidget* w, InputMethodHint mode ) { createInputMethodDict(); if ( mode == Normal ) { inputMethodDict->remove(w); } else { inputMethodDict->insert(w,(void*)mode); } } class HackDialog : public QDialog { public: void acceptIt() { accept(); } void rejectIt() { reject(); } }; void QPEApplication::mapToDefaultAction( QWSKeyEvent *ke, int key ) { // specialised actions for certain widgets. May want to // add more stuff here. if ( activePopupWidget() && activePopupWidget()->inherits( "QListBox" ) && activePopupWidget()->parentWidget() && activePopupWidget()->parentWidget()->inherits( "QComboBox" ) ) key = Qt::Key_Return; if ( activePopupWidget() && activePopupWidget()->inherits( "QPopupMenu" ) ) key = Qt::Key_Return; ke->simpleData.keycode = key; } class HackWidget : public QWidget { public: bool needsOk() { return (getWState() & WState_Reserved1 ); } }; /*! \internal */ bool QPEApplication::qwsEventFilter( QWSEvent *e ) { if ( !d->notbusysent && e->type == QWSEvent::Focus ) { if ( qApp->type() != QApplication::GuiServer ) { QCopEnvelope e("QPE/System", "notBusy(QString)" ); e << d->appName; } d->notbusysent=TRUE; } if ( type() == GuiServer ) { switch ( e->type ) { case QWSEvent::Mouse: if ( e->asMouse()->simpleData.state && !QWidget::find(e->window()) ) emit clientMoused(); } } if ( e->type == QWSEvent::Key ) { if ( d->kbgrabber == 1 ) return TRUE; QWSKeyEvent *ke = (QWSKeyEvent *)e; if ( ke->simpleData.keycode == Qt::Key_F33 ) { // Use special "OK" key to press "OK" on top level widgets QWidget *active = activeWindow(); QWidget *popup = 0; if ( active && active->isPopup() ) { popup = active; active = active->parentWidget(); } if ( active && (int)active->winId() == ke->simpleData.window && !active->testWFlags( WStyle_Customize|WType_Popup|WType_Desktop )) { if ( ke->simpleData.is_press ) { if ( popup ) popup->close(); if ( active->inherits( "QDialog" ) ) { HackDialog *d = (HackDialog *)active; d->acceptIt(); return TRUE; } else if ( ((HackWidget *)active)->needsOk() ) { QSignal s; s.connect( active, SLOT( accept() ) ); s.activate(); } else { // do the same as with the select key: Map to the default action of the widget: mapToDefaultAction( ke, Qt::Key_Return ); } } } } else if ( ke->simpleData.keycode == Qt::Key_F30 ) { // Use special "select" key to do whatever default action a widget has mapToDefaultAction( ke, Qt::Key_Space ); } else if ( ke->simpleData.keycode == Qt::Key_Escape && ke->simpleData.is_press ) { // Escape key closes app if focus on toplevel QWidget *active = activeWindow(); if ( active && active->testWFlags( WType_TopLevel ) && (int)active->winId() == ke->simpleData.window && !active->testWFlags( WStyle_Dialog|WStyle_Customize|WType_Popup|WType_Desktop )) { if ( active->inherits( "QDialog" ) ) { HackDialog *d = (HackDialog *)active; d->rejectIt(); return TRUE; } else if ( strcmp( argv()[0], "embeddedkonsole") != 0 ) { active->close(); } } } #if QT_VERSION < 231 // Filter out the F4/Launcher key from apps // ### The launcher key may not always be F4 on all devices if ( ((QWSKeyEvent *)e)->simpleData.keycode == Qt::Key_F4 ) return TRUE; #endif } if ( e->type == QWSEvent::Focus ) { QWSFocusEvent *fe = (QWSFocusEvent*)e; QWidget* nfw = QWidget::find(e->window()); if ( !fe->simpleData.get_focus ) { QWidget *active = activeWindow(); while ( active && active->isPopup() ) { active->close(); active = activeWindow(); } if ( !nfw && d->kbgrabber == 2 ) { ungrabKeyboard(); d->kbregrab = TRUE; // want kb back when we're active } } else { // make sure our modal widget is ALWAYS on top QWidget *topm = activeModalWidget(); if ( topm ) { topm->raise(); } if ( d->kbregrab ) { grabKeyboard(); d->kbregrab = FALSE; } } if ( fe->simpleData.get_focus && inputMethodDict ) { InputMethodHint m = inputMethodHint( QWidget::find(e->window()) ); if ( m == AlwaysOff ) Global::hideInputMethod(); if ( m == AlwaysOn ) Global::showInputMethod(); } } return QApplication::qwsEventFilter( e ); } /*! Destroys the QPEApplication. */ QPEApplication::~QPEApplication() { ungrabKeyboard(); #if defined(Q_WS_QWS) && !defined(QT_NO_COP) // Need to delete QCopChannels early, since the display will // be gone by the time we get to ~QObject(). delete sysChannel; delete pidChannel; #endif delete d; } /*! - Returns <tt>$QPEDIR/</tt>. + Returns <tt>$OPIEDIR/</tt>. */ QString QPEApplication::qpeDir() { - const char *base = getenv( "QPEDIR" ); + const char *base = getenv( "OPIEDIR" ); if ( base ) return QString( base ) + "/"; return QString( "../" ); } /*! Returns the user's current Document directory. There is a trailing "/". */ QString QPEApplication::documentDir() { const char *base = getenv( "HOME" ); if ( base ) return QString( base ) + "/Documents/"; return QString( "../Documents/" ); } static int deforient=-1; /*! \internal */ int QPEApplication::defaultRotation() { if ( deforient < 0 ) { QString d = getenv("QWS_DISPLAY"); if ( d.contains("Rot90") ) { deforient = 90; } else if ( d.contains("Rot180") ) { deforient = 180; } else if ( d.contains("Rot270") ) { deforient = 270; } else { deforient=0; } } return deforient; } /*! \internal */ void QPEApplication::setDefaultRotation(int r) { if ( qApp->type() == GuiServer ) { deforient = r; setenv("QWS_DISPLAY", QString("Transformed:Rot%1:0").arg(r).latin1(), 1); } else { QCopEnvelope("QPE/System", "setDefaultRotation(int)") << r; } } /*! \internal */ void QPEApplication::applyStyle() { Config config( "qpe" ); config.setGroup( "Appearance" ); // Widget style QString style = config.readEntry( "Style", "Light" ); internalSetStyle( style ); // Colors QColor bgcolor( config.readEntry( "Background", "#E5E1D5" ) ); QColor btncolor( config.readEntry( "Button", "#D6CDBB" ) ); QPalette pal( btncolor, bgcolor ); QString color = config.readEntry( "Highlight", "#800000" ); pal.setColor( QColorGroup::Highlight, QColor(color) ); color = config.readEntry( "HighlightedText", "#FFFFFF" ); pal.setColor( QColorGroup::HighlightedText, QColor(color) ); color = config.readEntry( "Text", "#000000" ); pal.setColor( QColorGroup::Text, QColor(color) ); color = config.readEntry( "ButtonText", "#000000" ); pal.setColor( QPalette::Active, QColorGroup::ButtonText, QColor(color) ); color = config.readEntry( "Base", "#FFFFFF" ); pal.setColor( QColorGroup::Base, QColor(color) ); pal.setColor( QPalette::Disabled, QColorGroup::Text, pal.color(QPalette::Active, QColorGroup::Background).dark() ); setPalette( pal, TRUE ); } void QPEApplication::systemMessage( const QCString &msg, const QByteArray &data) { #ifdef Q_WS_QWS QDataStream stream( data, IO_ReadOnly ); if ( msg == "applyStyle()" ) { applyStyle(); } else if ( msg == "setScreenSaverInterval(int)" ) { if ( type() == GuiServer ) { int time; stream >> time; setScreenSaverInterval(time); } } else if ( msg == "setScreenSaverIntervals(int,int,int)" ) { if ( type() == GuiServer ) { int t1,t2,t3; stream >> t1 >> t2 >> t3; setScreenSaverIntervals(t1,t2,t3); } } else if ( msg == "setBacklight(int)" ) { if ( type() == GuiServer ) { int bright; stream >> bright; setBacklight(bright); } } else if ( msg == "setDefaultRotation(int)" ) { if ( type() == GuiServer ) { int r; stream >> r; setDefaultRotation(r); } } else if ( msg == "shutdown()" ) { if ( type() == GuiServer ) shutdown(); } else if ( msg == "quit()" ) { if ( type() != GuiServer ) tryQuit(); } else if ( msg == "forceQuit()" ) { if ( type() != GuiServer ) quit(); } else if ( msg == "restart()" ) { if ( type() == GuiServer ) restart(); } else if ( msg == "grabKeyboard(QString)" ) { QString who; stream >> who; if ( who.isEmpty() ) d->kbgrabber = 0; else if ( who != d->appName ) d->kbgrabber = 1; else d->kbgrabber = 2; } else if ( msg == "language(QString)" ) { if ( type() == GuiServer ) { QString l; stream >> l; QString cl = getenv("LANG"); if ( cl != l ) { if ( l.isNull() ) unsetenv( "LANG" ); else setenv( "LANG", l.latin1(), 1 ); restart(); } } } else if ( msg == "timeChange(QString)" ) { QString t; stream >> t; if ( t.isNull() ) unsetenv( "TZ" ); else setenv( "TZ", t.latin1(), 1 ); // emit the signal so everyone else knows... emit timeChanged(); } else if ( msg == "execute(QString)" ) { if ( type() == GuiServer ) { QString t; stream >> t; Global::execute( t ); } } else if ( msg == "execute(QString,QString)" ) { if ( type() == GuiServer ) { QString t,d; stream >> t >> d; Global::execute( t, d ); } } else if ( msg == "addAlarm(QDateTime,QCString,QCString,int)" ) { if ( type() == GuiServer ) { QDateTime when; QCString channel, message; int data; stream >> when >> channel >> message >> data; AlarmServer::addAlarm( when, channel, message, data ); } } else if ( msg == "deleteAlarm(QDateTime,QCString,QCString,int)" ) { if ( type() == GuiServer ) { QDateTime when; QCString channel, message; int data; stream >> when >> channel >> message >> data; AlarmServer::deleteAlarm( when, channel, message, data ); } } else if ( msg == "clockChange(bool)" ) { int tmp; stream >> tmp; emit clockChanged( tmp ); |