]> git.saurik.com Git - wxWidgets.git/commitdiff
Added dynamic events sample.
authorRobert Roebling <robert@roebling.de>
Fri, 22 May 1998 19:08:19 +0000 (19:08 +0000)
committerRobert Roebling <robert@roebling.de>
Fri, 22 May 1998 19:08:19 +0000 (19:08 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

samples/dynamic/minimal.cpp [new file with mode: 0644]
samples/dynamic/minimal.def [new file with mode: 0644]
samples/dynamic/minimal.rc [new file with mode: 0644]

diff --git a/samples/dynamic/minimal.cpp b/samples/dynamic/minimal.cpp
new file mode 100644 (file)
index 0000000..0015847
--- /dev/null
@@ -0,0 +1,111 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        minimal.cpp
+// Purpose:     Dynamic events wxWindows sample
+// Author:      Julian Smart
+// Modified by:
+// Created:     04/01/98
+// RCS-ID:      $Id$
+// Copyright:   (c) Julian Smart and Markus Holzem
+// Licence:    wxWindows license
+/////////////////////////////////////////////////////////////////////////////
+
+#ifdef __GNUG__
+#pragma implementation "minimal.cpp"
+#pragma interface "minimal.cpp"
+#endif
+
+// For compilers that support precompilation, includes "wx/wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+#pragma hdrstop
+#endif
+
+#ifndef WX_PRECOMP
+#include "wx/wx.h"
+#endif
+
+// Define a new application type
+class MyApp: public wxApp
+{ public:
+    bool OnInit(void);
+};
+
+// Define a new frame type
+class MyFrame: public wxFrame
+{ public:
+    MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h);
+    
+ public:
+    void OnQuit(wxCommandEvent& event);
+    void OnAbout(wxCommandEvent& event);
+       bool OnClose(void) { return TRUE; }
+};
+
+// ID for the menu commands
+#define MINIMAL_QUIT   1
+#define MINIMAL_TEXT   101
+#define MINIMAL_ABOUT  102
+
+// Create a new application object
+IMPLEMENT_APP  (MyApp)
+
+// `Main program' equivalent, creating windows and returning main app frame
+bool MyApp::OnInit(void)
+{
+  // Create the main frame window
+  MyFrame *frame = new MyFrame(NULL, "Minimal wxWindows App", 50, 50, 450, 340);
+  
+  frame->Connect( MINIMAL_QUIT,  -1, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction)MyFrame::OnQuit );
+  frame->Connect( MINIMAL_ABOUT, -1, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction)MyFrame::OnAbout );
+  
+  // Give it an icon
+#ifdef __WINDOWS__
+  frame->SetIcon(wxIcon("mondrian"));
+#endif
+#ifdef __X__
+  frame->SetIcon(wxIcon("aiai.xbm"));
+#endif
+
+  // Make a menubar
+  wxMenu *file_menu = new wxMenu;
+
+  file_menu->Append(MINIMAL_ABOUT, "&About");
+  file_menu->Append(MINIMAL_QUIT, "E&xit");
+  wxMenuBar *menu_bar = new wxMenuBar;
+  menu_bar->Append(file_menu, "&File");
+  frame->SetMenuBar(menu_bar);
+
+  // Make a panel with a message
+  wxPanel *panel = new wxPanel(frame, -1, wxPoint(0, 0), wxSize(400, 200), wxTAB_TRAVERSAL);
+
+  wxStaticText *msg = new wxStaticText(panel, 311, "Hello!", wxPoint(10, 10), wxSize(-1, -1),
+    0);
+
+  // Show the frame
+  frame->Show(TRUE);
+  
+  SetTopWindow(frame);
+
+  return TRUE;
+}
+
+// My frame constructor
+MyFrame::MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h):
+  wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h))
+{}
+
+void MyFrame::OnQuit(wxCommandEvent& event)
+{
+  Close(TRUE);
+}
+
+void MyFrame::OnAbout(wxCommandEvent& event)
+{
+  wxMessageDialog dialog(this, "This is a minimal sample\nA second line in the message box",
+       "About Minimal", wxYES_NO|wxCANCEL);
+
+  dialog.ShowModal();
+}
+
+
diff --git a/samples/dynamic/minimal.def b/samples/dynamic/minimal.def
new file mode 100644 (file)
index 0000000..060bfe3
--- /dev/null
@@ -0,0 +1,8 @@
+NAME         Minimal
+DESCRIPTION  'Minimal wxWindows application'
+EXETYPE      WINDOWS
+STUB         'WINSTUB.EXE'
+CODE         PRELOAD MOVEABLE DISCARDABLE
+DATA         PRELOAD MOVEABLE MULTIPLE
+HEAPSIZE     4048
+STACKSIZE    16000
diff --git a/samples/dynamic/minimal.rc b/samples/dynamic/minimal.rc
new file mode 100644 (file)
index 0000000..7655c62
--- /dev/null
@@ -0,0 +1,3 @@
+mondrian ICON "mondrian.ico"
+#include "wx/msw/wx.rc"
+