summaryrefslogtreecommitdiff
authoralwin <alwin>2004-04-06 12:34:17 (UTC)
committer alwin <alwin>2004-04-06 12:34:17 (UTC)
commit19a3f177cdf334259438a0f2266255886f3063bb (patch) (unidiff)
tree6fb30c93072f0698e308e67678574cdee469b4e8
parent601c352dd956c9736fb4e3881cd7e60c504d007a (diff)
downloadopie-19a3f177cdf334259438a0f2266255886f3063bb.zip
opie-19a3f177cdf334259438a0f2266255886f3063bb.tar.gz
opie-19a3f177cdf334259438a0f2266255886f3063bb.tar.bz2
added OPIE_EXPORT_APP_V2( Factory,name ) macro.
Factory is the same as in OPIE_EXPORT_APP, name is the display name (third parameter of OApplication). In non-quicklaunch mode it will generate a Opie::Core::OApplication object instead of a QPEApplication object.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiecore/oapplicationfactory.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/libopie2/opiecore/oapplicationfactory.h b/libopie2/opiecore/oapplicationfactory.h
index 4518174..6247776 100644
--- a/libopie2/opiecore/oapplicationfactory.h
+++ b/libopie2/opiecore/oapplicationfactory.h
@@ -288,8 +288,46 @@ int main( int argc, char **argv ) { \
288\ 288\
289 int rv = a.exec(); \ 289 int rv = a.exec(); \
290 delete mw; \ 290 delete mw; \
291 return rv; \ 291 return rv; \
292 }else \ 292 }else \
293 return -1; \ 293 return -1; \
294} 294}
295#endif 295#endif
296
297#ifdef OPIE_APP_INTERFACE
298#define OPIE_EXPORT_APP_V2( factory,name ) Q_EXPORT_INTERFACE() { Q_CREATE_INSTANCE( factory ) }
299#else
300
301#include <opie2/oapplication.h>
302
303#define OPIE_EXPORT_APP_V2( Factory,name ) \
304int main( int argc, char **argv ) { \
305 Opie::Core::OApplication a(argc, argv, name ); \
306 QWidget *mw = 0;\
307\
308 /* method from TT */ \
309 QString executableName = QString::fromLatin1( argv[0] ); \
310 executableName = executableName.right(executableName.length() \
311 - executableName.findRev('/') - 1); \
312 \
313 Factory f; \
314 QStringList list = f.applications(); \
315 if (list.contains(executableName) ) \
316 mw = f.createMainWindow(executableName, 0, 0, 0 ); \
317 else \
318 mw = f.createMainWindow( list[0], 0, 0, 0 ); \
319\
320 if( mw ) { \
321 if ( mw->metaObject()->slotNames().contains("setDocument(const QString&)" ) ) \
322 a.showMainDocumentWidget( mw ); \
323 else \
324 a.showMainWidget( mw ); \
325\
326 int rv = a.exec(); \
327 delete mw; \
328 return rv; \
329 }else \
330 return -1; \
331}
332#endif
333