home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool_main.zip / ool / include / xdde.h < prev    next >
C/C++ Source or Header  |  1998-01-21  |  3KB  |  65 lines

  1. #ifndef __OOL_XDDE_H__
  2. #define __OOL_XDDE_H__
  3.  
  4. /*===========================================================================*/
  5. /* OOL ------------------- the Open Object Library ------------------- r 1.0 */
  6. /*===========================================================================*/
  7. /*                              class: XDDE                                  */
  8. /*                       derived from: XObject                               */
  9. /*                        last update: 12/96                                 */
  10. /*                      programmed by: Stefan von Brauk (sbrauk@gwdg.de)     */
  11. /*===========================================================================*/
  12.  
  13.  
  14.  
  15. #include "xobject.h"
  16.  
  17. class XWindow;
  18. class ddehandler;
  19.  
  20. #define DDEF_TEXT  DDEFMT_TEXT
  21.  
  22. class _export_ XDDE: public XObject
  23. {
  24.       friend ddehandler;
  25.    private:
  26.       HWND server;
  27.       SHORT ack;
  28.       BOOL connected;
  29.       PDDESTRUCT MakeDDEMsg( const USHORT usFormat, const char * pszItemName, const void * Data, const USHORT usDataSize);
  30.       ddehandler * handler;
  31.       XWindow * window;
  32.       HWND * clientList;
  33.       LONG clients;
  34.       BOOL isServer;
  35.    public:
  36.       XDDE( const XWindow * handleFor, const BOOL isServer = FALSE );
  37.       ~XDDE();
  38.       virtual void Acknowledgement(LONG status) { ;}
  39.       BOOL Advise( const char * itemName = "", const SHORT format = DDEF_TEXT );
  40.       virtual void AdviseRequested( char *, SHORT, OOL_WINDOWHANDLE ) {;}
  41.       virtual void Connected( OOL_WINDOWHANDLE ) { ;}
  42.       virtual void DataReceived( ULONG , void * , char * , SHORT ) { ;}
  43.       virtual void DataRequested( char * , SHORT , OOL_WINDOWHANDLE ) { ;}
  44.       virtual void DisConnected() { ;}
  45.       virtual void ConnectionRequested( char * app, char * topic, OOL_WINDOWHANDLE handle) { ;}
  46.       virtual void DoCommand( char*) {;}
  47.       void AcceptConnection( char * app, char * topic, OOL_WINDOWHANDLE hwnd );
  48.       BOOL Init( char * app, char * topic);
  49.       virtual BOOL InitPossible(char * , char * ) { return TRUE; }
  50.       BOOL IsConnected(void) const { return connected; }
  51.       BOOL PokeData( const OOL_WINDOWHANDLE client, const char * itemName, const void * data, const ULONG size=0, const SHORT format = DDEF_TEXT);
  52.       SHORT GetAck(void) const { return ack; }
  53.       BOOL GetData( const char * itemName, const SHORT format=DDEF_TEXT);
  54.       XWindow * GetOwner(void) const { return window; }
  55.       OOL_WINDOWHANDLE GetServerHandle(void) const { return server; }
  56.       void SetAcknoledgment( const LONG a) {ack = a; }
  57.       BOOL SendCommand( const char * itemName, const char * theCommand);
  58.       BOOL SendData( const OOL_WINDOWHANDLE client, const char * itemName, const void * data, const ULONG size=0, const SHORT format = DDEF_TEXT);
  59.       void Terminate(void);
  60.       BOOL UnAdvise( const char * itemName = "");
  61.       virtual void UnAdviseRequested( OOL_WINDOWHANDLE ) {;}
  62. };
  63.  
  64. #endif
  65.