QApplicationBridge.h

00001 /*
00002  * @(#)QApplicationBridge.h  0.2.0 / 2007-05-01
00003  *
00004  * Copyright (c) 2007, ETF and contributors. All rights reserved.
00005  *
00006  * This software is licensed under the LGPL, version 2.1, license.
00007  * A copy of the license is included in the file LICENSE-LGPL.txt.
00008  */
00009 #ifndef QAPPLICATIONBRIDGE_H
00010 #define QAPPLICATIONBRIDGE_H
00011 
00012 #include "JavaQxQSwing.h"
00013 
00014 #include "QApplicationAdapter.h"
00015 
00016 /*^**************************************************************************^*/
00017 /*- QApplicationBridge Class.                                                -*/
00018 /*^**************************************************************************^*/
00019 
00026 class JAVAQX_EXPORT QApplicationBridge
00027 {
00028 public:
00029   static void initialize(JNIEnv *env, jobjectArray args);
00030   static void dispose();
00031   static jint keyboardModifiers();
00032   static jint mouseButtons();
00033   static bool argvContains(const char *str);
00034   static bool argvContains(const char *str, int len);
00035 public:
00036   inline static int argc();
00037   inline static char **argv();
00038   inline static QApplicationAdapter *qAppAdapterInstance();
00039 private:
00040   static int sm_argc;
00041   static char **sm_argv;
00042   static QApplicationAdapter *qApplicationAdapter;
00043 };
00044 
00045 /*^**************************************************************************^*/
00046 /*- QApplicationBridge :: Public Static Inline Member Functions.             -*/
00047 /*^**************************************************************************^*/
00048 
00054 inline int QApplicationBridge::argc()
00055 {
00056   return sm_argc;
00057 }
00058 
00064 inline char **QApplicationBridge::argv()
00065 {
00066   return sm_argv;
00067 }
00068 
00074 inline QApplicationAdapter *QApplicationBridge::qAppAdapterInstance()
00075 {
00076   return qApplicationAdapter;
00077 }
00078 
00079 /*^**************************************************************************^*/
00080 /*- Macro Definition.                                                        -*/
00081 /*^**************************************************************************^*/
00082 
00083 #define qAppAdapter (QApplicationBridge::qAppAdapterInstance())
00084 
00085 #endif // QAPPLICATIONBRIDGE_H
00086 
00087 /*^*****************************************************************************
00088   File History:
00089 
00090  - 2007-05-01 18:35:17 Slobodan
00091    Initial version
00092 
00093 *****************************************************************************^*/

Copyright © 2007 ETF and contributors. All Rights Reserved.