]>
git.saurik.com Git - wxWidgets.git/blob - contrib/samples/applet/applet.cpp
1 /****************************************************************************
3 * wxWindows HTML Applet Package
5 * ========================================================================
7 * The contents of this file are subject to the wxWindows licence; you
8 * may not use this file except in compliance with the License. You may
9 * obtain a copy of the License at http://www.wxwindows.org/licence.htm
11 * Software distributed under the License is distributed on an
12 * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
13 * implied. See the License for the specific language governing
14 * rights and limitations under the License.
16 * The Original Code is Copyright (C) 2001 SciTech Software, Inc.
18 * The Initial Developer of the Original Code is SciTech Software, Inc.
19 * All Rights Reserved.
21 * ========================================================================
26 * Description: Main wxApplet sample program
28 ****************************************************************************/
30 // For compilers that support precompilation, includes "wx/wx.h".
31 #include <wx/wxprec.h>
37 #include "wx/applet/window.h"
40 /*---------------------------- Global variables ---------------------------*/
42 // Define the event tables for handling application frame events
43 BEGIN_EVENT_TABLE(MyFrame
, wxFrame
)
44 EVT_MENU(Minimal_Quit
, MyFrame::OnQuit
)
45 EVT_MENU(Minimal_About
, MyFrame::OnAbout
)
46 EVT_MENU(Minimal_Back
, MyFrame::OnBack
)
47 EVT_MENU(Minimal_Forward
, MyFrame::OnForward
)
50 // Create a new application object: this macro will allow wxWindows to create
51 // the application object during program execution (it's better than using a
52 // static object for many reasons) and also declares the accessor function
53 // wxGetApp() which will return the reference of the right type (i.e. MyApp and
57 /*------------------------- Implementation --------------------------------*/
59 /****************************************************************************
61 title - Title for the frame window
62 pos - Position to place to frame window
63 size - Size of the frame window
66 Application frame window constructor
67 ****************************************************************************/
69 const wxString
& title
,
72 : wxFrame(NULL
, -1, title
, pos
, size
)
75 wxMenu
*menuFile
= new wxMenu
;
76 wxMenu
*menuNav
= new wxMenu
;
77 menuFile
->Append(Minimal_Quit
, "E&xit");
78 menuNav
->Append(Minimal_Back
, "Go &back");
79 menuNav
->Append(Minimal_Forward
, "Go &forward");
81 // Now append the freshly created menu to the menu bar...
82 wxMenuBar
*menuBar
= new wxMenuBar
;
83 menuBar
->Append(menuFile
, "&File");
84 menuBar
->Append(menuNav
, "&Navigate");
86 // ... and attach this menu bar to the frame
90 // Create the HTML window
91 html
= new wxHtmlAppletWindow(this);
92 html
->SetRelatedFrame(this, "wxApplet Demo: '%s'");
93 html
->SetRelatedStatusBar(1);
94 html
->LoadPage("index.html");
97 /****************************************************************************
99 Event handler for the 'Exit' menu item
100 ****************************************************************************/
101 void MyFrame::OnQuit(
104 // TRUE is to force the frame to close
108 /****************************************************************************
110 Event handler for the 'About' menu item
111 ****************************************************************************/
112 void MyFrame::OnAbout(
115 // TODO: Bring up and about html page!
118 /****************************************************************************
120 Event handler for the 'Go back' menu item
121 ****************************************************************************/
122 void MyFrame::OnBack(
125 if (!html
-> HistoryBack())
126 wxMessageBox("You reached prehistory era!");
129 /****************************************************************************
131 Event handler for the 'Go forward' menu item
132 ****************************************************************************/
133 void MyFrame::OnForward(
136 if (!html
-> HistoryForward())
137 wxMessageBox("No more items in history!");
140 /****************************************************************************
142 `Main program' equivalent: the program execution "starts" here
143 ****************************************************************************/
146 // Create the main application window
147 MyFrame
*frame
= new MyFrame("wxApplet testing application",
148 wxPoint(50, 50), wxSize(640, 480));
150 // Show it and tell the application that it's our main window
154 // Success: wxApp::OnRun() will be called to run the application