diff options
author | fcolin | 2010-03-12 16:41:08 +0000 |
---|---|---|
committer | fcolin | 2010-03-12 16:41:08 +0000 |
commit | 576ad2b67bced04bde83de91f5e647af868c5fd4 (patch) | |
tree | 147725b5c27f1f31da1e879ac949822c75ac49a2 /Ivy/IvySynchroWnd.h | |
parent | 74c0ac487332231e8dd6ba35580b07166ffbcfe2 (diff) | |
download | ivy-cplusplus-576ad2b67bced04bde83de91f5e647af868c5fd4.zip ivy-cplusplus-576ad2b67bced04bde83de91f5e647af868c5fd4.tar.gz ivy-cplusplus-576ad2b67bced04bde83de91f5e647af868c5fd4.tar.bz2 ivy-cplusplus-576ad2b67bced04bde83de91f5e647af868c5fd4.tar.xz |
mise en conformité des messages ping /pong
Correction pb a la fermeture d'ivy
Diffstat (limited to 'Ivy/IvySynchroWnd.h')
-rw-r--r-- | Ivy/IvySynchroWnd.h | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/Ivy/IvySynchroWnd.h b/Ivy/IvySynchroWnd.h index ffa44ba..b90e2a0 100644 --- a/Ivy/IvySynchroWnd.h +++ b/Ivy/IvySynchroWnd.h @@ -13,7 +13,7 @@ class IvySynchroWnd {
// Construction
public:
- IvySynchroWnd();
+
// Attributes
public:
@@ -21,7 +21,10 @@ public: // Operations
public:
+ static void PostQuit();
void PostIvyCB( IvySynchronousCallback *cb );
+ static void Init(bool synchronous);
+ static void Finish();
// Implementation
public:
@@ -30,8 +33,9 @@ protected: HWND m_hWnd;
protected:
+ IvySynchroWnd();
// Unique instance of this class
- static IvySynchroWnd *m_synchro;
+ static IvySynchroWnd *m_synchro; // for synchronous Windowed
// Generated message map functions
static LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
@@ -49,13 +53,14 @@ protected: LRESULT OnIvyCB(WPARAM wParam, LPARAM lParam);
friend class IvySynchronousMessageCallback;
friend class IvySynchronousApplicationCallback;
+ friend class IvySynchronousBindingCallback;
+ friend class IvySynchronousDieCallback;
};
class IvySynchronousCallback
{
protected:
IvyApplication *app;
- static IvySynchroWnd *m_synchro;
friend class Ivy;
public:
virtual void CallCallback() = 0;
@@ -107,3 +112,18 @@ protected: friend class IvySynchroWnd;
};
+
+class IvySynchronousDieCallback: public IvySynchronousCallback, public IvyDieCallback
+{
+public:
+ IvySynchronousDieCallback( IvyDieCallback *cb );
+ virtual void CallCallback();
+ virtual bool OnDie (IvyApplication *app, int id, const char *arg );
+protected:
+ IvyDieCallback *target;
+
+ int id;
+ const char *arg;
+
+ friend class IvySynchroWnd;
+};
\ No newline at end of file |