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

  1. #ifndef __OOL_XDDE_H__
  2. #define __OOL_XDDE_H__
  3.  
  4. /*===========================================================================*/
  5. /* OOL ------------------- the Open Object Library ------------- OS/2 Beta 1 */
  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 "xsetbtn.h"
  16. #include "xstring.h"
  17.  
  18. class XWindow;
  19. class ddehandler;
  20.  
  21. #define DDEF_TEXT  DDEFMT_TEXT
  22.  
  23. class _export_ XDDE: public XObject
  24. {
  25.       friend ddehandler;
  26.    private:
  27.       HWND server;
  28.       SHORT ack;
  29.       BOOL connected;
  30.       XString app;
  31.       XString topic;
  32.       PDDESTRUCT MakeDDEMsg( const USHORT usFormat, const char * pszItemName, const void * Data, const USHORT usDataSize);
  33.       ddehandler * handler;
  34.       XWindow * window;
  35.       BOOL isServer;
  36.       SHORT clients;
  37.       ULONG * clientList;
  38.    public:
  39.       XDDE( const XWindow * handleFor, const char * appName, const char * toppicName, const BOOL isServer = FALSE );
  40.       ~XDDE();
  41.       virtual void Acknowledgement(LONG status) { ;}
  42.       BOOL Advise( const char * itemName = "", const SHORT format = DDEF_TEXT );
  43.       virtual void AdviseRequested( char *, SHORT, OOL_WINDOWHANDLE ) {;}
  44.       virtual void Connected( OOL_WINDOWHANDLE ) { ;}
  45.       virtual void DataReceived( ULONG , void * , char * , SHORT ) { ;}
  46.       virtual void DataRequested( char * , SHORT , OOL_WINDOWHANDLE ) { ;}
  47.       virtual void DisConnected() { ;}
  48.       BOOL Init(void);
  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.