Updated setup.
[wxWidgets.git] / utils / wxOLE / samples / servlet / servlet.cpp
0 / 130 (  0%)
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: servlet.cpp
3// Purpose: Minimal wxWindows OLE server sample
4// Author: Robert Roebling
5// Modified by:
6// Created: 20/04/99
7// RCS-ID: $Id$
8// Copyright: (c) Robert Roebling
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12// For compilers that support precompilation, includes "wx/wx.h".
13#include "wx/wxprec.h"
14
15#ifdef __BORLANDC__
16 #pragma hdrstop
17#endif
18
19#ifndef WX_PRECOMP
20 #include "wx/wx.h"
21#endif
22
23// For OLE stuff
24#include "wxole.h"
25
26#if defined(__WXGTK__) || defined(__WXMOTIF__)
27 #include "mondrian.xpm"
28#endif
29
30//----------------------------------------------------------------------------
31// MyOleControl
32//----------------------------------------------------------------------------
33
34class MyOleControl : public wxOleControl
35{
36public:
37
38 MyOleControl();
39
40 void OnPaint( wxPaintEvent &event );
41
42private:
43 DECLARE_EVENT_TABLE()
44};
45
46//----------------------------------------------------------------------------
47// MyOleServer
48//----------------------------------------------------------------------------
49
50class MyOleServer : public wxOleServer
51{
52public:
53
54 MyOleServer() : wxOleServer( "servlet" ) { }
55
56 wxOleControl *CreateOleControl() { return new MyOleControl(); }
57};
58
59//----------------------------------------------------------------------------
60// MyApp
61//----------------------------------------------------------------------------
62
63class MyApp : public wxApp
64{
65public:
66
67 MyApp();
68 virtual ~MyApp();
69
70 virtual bool OnInit();
71
72 wxOleServerEnv *m_oleEnv;
73 MyOleServer *m_oleServer;
74};
75
76//----------------------------------------------------------------------------
77// main
78//----------------------------------------------------------------------------
79
80IMPLEMENT_APP(MyApp)
81
82//----------------------------------------------------------------------------
83// MyApp
84//----------------------------------------------------------------------------
85
86MyApp::MyApp()
87{
88}
89
90MyApp::~MyApp()
91{
92 delete m_oleEnv;
93 delete m_oleServer;
94}
95
96#include "gtk/gtk.h"
97
98bool MyApp::OnInit()
99{
100 m_oleEnv = new wxOleServerEnv( "MyServer", "1.0" );
101 m_oleServer = new MyOleServer();
102
103 /* how do we get outta here ? */
104 for (;;) wxYield();
105
106 return TRUE;
107}
108
109//----------------------------------------------------------------------------
110// MyOleControl
111//----------------------------------------------------------------------------
112
113BEGIN_EVENT_TABLE(MyOleControl, wxOleControl)
114 EVT_PAINT(MyOleControl::OnPaint)
115END_EVENT_TABLE()
116
117MyOleControl::MyOleControl() :
118 wxOleControl( -1 )
119{
120 (void)new wxButton( this, -1, "Ole, Ole", wxPoint(5,40), wxSize(120,-1) );
121 (void)new wxButton( this, -1, "Greetings", wxPoint(5,70), wxSize(120,-1) );
122}
123
124void MyOleControl::OnPaint( wxPaintEvent &WXUNUSED(event) )
125{
126 wxPaintDC dc(this);
127 dc.SetFont( wxFont( 24, wxDECORATIVE, wxNORMAL, wxNORMAL, FALSE, "charter" ) );
128 dc.DrawText( "wxWidgets rules!", 5, 5 );
129}
130