home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wxos2240.zip / wxWindows-2.4.0 / samples / ipc / server.h < prev    next >
C/C++ Source or Header  |  2002-12-16  |  2KB  |  82 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. // Name:        server.h
  3. // Purpose:     DDE sample: server
  4. // Author:      Julian Smart
  5. // Modified by:
  6. // Created:     25/01/99
  7. // RCS-ID:      $Id: server.h,v 1.4.2.1 2002/12/15 17:25:08 MBN Exp $
  8. // Copyright:   (c) Julian Smart
  9. // Licence:     wxWindows licence
  10. /////////////////////////////////////////////////////////////////////////////
  11.  
  12. // Define a new application
  13. class MyServer;
  14. class MyApp : public wxApp
  15. {
  16. public:
  17.     virtual bool OnInit();
  18.     virtual int OnExit();
  19.  
  20. private:
  21.     MyServer *m_server;
  22. };
  23.  
  24. DECLARE_APP(MyApp)
  25.  
  26. // Define a new frame
  27. class MyFrame : public wxFrame
  28. {
  29. public:
  30.     MyFrame(wxFrame *frame, const wxString& title);
  31.  
  32.     void OnListBoxClick(wxCommandEvent& event);
  33.     void OnExit(wxCommandEvent& event);
  34.  
  35. private:
  36.     wxPanel *panel;
  37.  
  38.     DECLARE_EVENT_TABLE()
  39. };
  40.  
  41. class IPCDialogBox;
  42. class MyConnection : public wxConnection
  43. {
  44. public:
  45.     MyConnection();
  46.     ~MyConnection();
  47.  
  48.     bool OnExecute(const wxString& topic, wxChar *data, int size, wxIPCFormat format);
  49.     wxChar *OnRequest(const wxString& topic, const wxString& item, int *size, wxIPCFormat format);
  50.     bool OnPoke(const wxString& topic, const wxString& item, wxChar *data, int size, wxIPCFormat format);
  51.     bool OnStartAdvise(const wxString& topic, const wxString& item);
  52.  
  53.     IPCDialogBox *dialog;
  54. };
  55.  
  56. class MyServer: public wxServer
  57. {
  58. public:
  59.     wxConnectionBase *OnAcceptConnection(const wxString& topic);
  60. };
  61.  
  62. class IPCDialogBox: public wxDialog
  63. {
  64. public:
  65.     IPCDialogBox(wxWindow *parent,
  66.                  const wxString& title,
  67.                  const wxPoint& pos,
  68.                  const wxSize& size,
  69.                  MyConnection *the_connection);
  70.     ~IPCDialogBox( );
  71.  
  72.     void OnQuit(wxCommandEvent& event);
  73.  
  74.     MyConnection *m_connection;
  75.  
  76.     DECLARE_EVENT_TABLE()
  77. };
  78.  
  79. #define SERVER_EXIT         wxID_EXIT
  80. #define SERVER_LISTBOX      500
  81. #define SERVER_QUIT_BUTTON  501
  82.