]> git.saurik.com Git - wxWidgets.git/blame - samples/ipc/server.h
Moved the cleanup code to an EVT_WINDOW_DESTROY handler.
[wxWidgets.git] / samples / ipc / server.h
CommitLineData
7921cf2b
JS
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$
8// Copyright: (c) Julian Smart
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12// Define a new application
4b89c618
VZ
13class MyServer;
14class MyApp : public wxApp
7921cf2b 15{
4b89c618
VZ
16public:
17 virtual bool OnInit();
18 virtual int OnExit();
19
20private:
21 MyServer *m_server;
7921cf2b
JS
22};
23
24DECLARE_APP(MyApp)
25
26// Define a new frame
4b89c618 27class MyFrame : public wxFrame
7921cf2b 28{
4b89c618
VZ
29public:
30 MyFrame(wxFrame *frame, const wxString& title);
7921cf2b 31
7921cf2b 32 void OnListBoxClick(wxCommandEvent& event);
f6bcfd97 33 void OnExit(wxCommandEvent& event);
4b89c618
VZ
34
35private:
36 wxPanel *panel;
37
38 DECLARE_EVENT_TABLE()
7921cf2b
JS
39};
40
41class IPCDialogBox;
4b89c618 42class MyConnection : public wxConnection
7921cf2b 43{
4b89c618
VZ
44public:
45 MyConnection(char *buf, int size);
46 ~MyConnection();
7921cf2b 47
4b89c618
VZ
48 bool OnExecute(const wxString& topic, char *data, int size, wxIPCFormat format);
49 char *OnRequest(const wxString& topic, const wxString& item, int *size, wxIPCFormat format);
50 bool OnPoke(const wxString& topic, const wxString& item, char *data, int size, wxIPCFormat format);
51 bool OnStartAdvise(const wxString& topic, const wxString& item);
7921cf2b 52
4b89c618
VZ
53private:
54 IPCDialogBox *dialog;
7921cf2b
JS
55};
56
57class MyServer: public wxServer
58{
59public:
60 wxConnectionBase *OnAcceptConnection(const wxString& topic);
61};
62
63class IPCDialogBox: public wxDialog
64{
65public:
4b89c618
VZ
66 IPCDialogBox(wxWindow *parent,
67 const wxString& title,
68 const wxPoint& pos,
69 const wxSize& size,
70 MyConnection *the_connection);
7921cf2b
JS
71
72 void OnQuit(wxCommandEvent& event);
73
4b89c618
VZ
74private:
75 MyConnection *m_connection;
76
77 DECLARE_EVENT_TABLE()
7921cf2b
JS
78};
79
f6bcfd97 80#define SERVER_EXIT wxID_EXIT
7921cf2b
JS
81#define SERVER_LISTBOX 500
82#define SERVER_QUIT_BUTTON 501