]>
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>
35 #include "wx/applet/window.h"
38 /*---------------------------- Global variables ---------------------------*/
40 // Define the event tables for handling application frame events
41 BEGIN_EVENT_TABLE(MyFrame
, wxFrame
)
42 EVT_MENU(Minimal_Quit
, MyFrame::OnQuit
)
43 EVT_MENU(Minimal_About
, MyFrame::OnAbout
)
44 EVT_MENU(Minimal_Back
, MyFrame::OnBack
)
45 EVT_MENU(Minimal_Forward
, MyFrame::OnForward
)
48 // Create a new application object: this macro will allow wxWindows to create
49 // the application object during program execution (it's better than using a
50 // static object for many reasons) and also declares the accessor function
51 // wxGetApp() which will return the reference of the right type (i.e. MyApp and
55 /*------------------------- Implementation --------------------------------*/
57 /****************************************************************************
59 title - Title for the frame window
60 pos - Position to place to frame window
61 size - Size of the frame window
64 Application frame window constructor
65 ****************************************************************************/
67 const wxString
& title
,
70 : wxFrame(NULL
, -1, title
, pos
, size
)
73 wxMenu
*menuFile
= new wxMenu
;
74 wxMenu
*menuNav
= new wxMenu
;
75 menuFile
->Append(Minimal_Quit
, "E&xit");
76 menuNav
->Append(Minimal_Back
, "Go &back");
77 menuNav
->Append(Minimal_Forward
, "Go &forward");
79 // Now append the freshly created menu to the menu bar...
80 wxMenuBar
*menuBar
= new wxMenuBar
;
81 menuBar
->Append(menuFile
, "&File");
82 menuBar
->Append(menuNav
, "&Navigate");
84 // ... and attach this menu bar to the frame
88 // Create the HTML window
89 html
= new wxHtmlAppletWindow(this);
90 html
->SetRelatedFrame(this, "wxApplet Demo: '%s'");
91 html
->SetRelatedStatusBar(1);
92 html
->LoadPage("index.html");
95 /****************************************************************************
97 Event handler for the 'Exit' menu item
98 ****************************************************************************/
102 // TRUE is to force the frame to close
106 /****************************************************************************
108 Event handler for the 'About' menu item
109 ****************************************************************************/
110 void MyFrame::OnAbout(
113 // TODO: Bring up and about html page!
116 /****************************************************************************
118 Event handler for the 'Go back' menu item
119 ****************************************************************************/
120 void MyFrame::OnBack(
123 if (!html
-> HistoryBack())
124 wxMessageBox("You reached prehistory era!");
127 /****************************************************************************
129 Event handler for the 'Go forward' menu item
130 ****************************************************************************/
131 void MyFrame::OnForward(
134 if (!html
-> HistoryForward())
135 wxMessageBox("No more items in history!");
138 /****************************************************************************
140 `Main program' equivalent: the program execution "starts" here
141 ****************************************************************************/
144 // Create the main application window
145 MyFrame
*frame
= new MyFrame("wxApplet testing application",
146 wxPoint(50, 50), wxSize(640, 480));
148 // Show it and tell the application that it's our main window
152 // Success: wxApp::OnRun() will be called to run the application