/////////////////////////////////////////////////////////////////////////////
-// Name: nativdlg.cpp
+// Name: samples/nativdlg/nativdlg.cpp
// Purpose: Native Windows dialog sample
// Author: Julian Smart
// Modified by:
// Created: 04/01/98
// RCS-ID: $Id$
-// Copyright: (c) Julian Smart and Markus Holzem
-// Licence: wxWindows license
+// Copyright: (c) Julian Smart
+// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
-#pragma implementation
-#endif
-
// For compilers that support precompilation, includes "wx/wx.h".
#include "wx/wxprec.h"
#error Sorry, this sample is only appropriate under Windows.
#endif
-#include "wx/resource.h"
+#ifndef __WXMSW__
+ #include "../sample.xpm"
+#endif
#include <ctype.h>
#include "nativdlg.h"
#include "resource.h"
-// Declare two frames
-MyFrame *frame = NULL;
-IMPLEMENT_APP(MyApp)
-// Testing of ressources
-MyApp::MyApp()
-{
-}
+
+IMPLEMENT_APP(MyApp)
bool MyApp::OnInit(void)
{
+ if ( !wxApp::OnInit() )
+ return false;
+
// Create the main frame window
- frame = new MyFrame(NULL, -1, "wxWindows Native Dialog Sample", wxPoint(0, 0), wxSize(300, 250));
+ MyFrame *frame = new MyFrame(NULL, wxID_ANY, wxT("wxWidgets Native Dialog Sample"), wxPoint(0, 0), wxSize(300, 250));
+#if wxUSE_STATUSBAR
// Give it a status line
frame->CreateStatusBar(2);
+#endif // wxUSE_STATUSBAR
// Make a menubar
wxMenu *file_menu = new wxMenu;
- file_menu->Append(RESOURCE_TEST1, "&Dialog box test", "Test dialog box resource");
- file_menu->Append(RESOURCE_QUIT, "E&xit", "Quit program");
+ file_menu->Append(RESOURCE_TEST1, wxT("&Dialog box test"), wxT("Test dialog box resource"));
+ file_menu->Append(RESOURCE_QUIT, wxT("E&xit"), wxT("Quit program"));
wxMenuBar *menu_bar = new wxMenuBar;
- menu_bar->Append(file_menu, "&File");
+ menu_bar->Append(file_menu, wxT("&File"));
// Associate the menu bar with the frame
frame->SetMenuBar(menu_bar);
// Make a panel
- frame->panel = new wxWindow(frame, -1, wxPoint(0, 0), wxSize(400, 400), 0, "MyMainFrame");
- frame->Show(TRUE);
+ frame->panel = new wxWindow(frame, wxID_ANY, wxPoint(0, 0), wxSize(400, 400), 0, wxT("MyMainFrame"));
+ frame->Show(true);
// Return the main frame window
SetTopWindow(frame);
- return TRUE;
+ return true;
}
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
- EVT_MENU(RESOURCE_QUIT, MyFrame::OnQuit)
- EVT_MENU(RESOURCE_TEST1, MyFrame::OnTest1)
+ EVT_MENU(RESOURCE_QUIT, MyFrame::OnQuit)
+ EVT_MENU(RESOURCE_TEST1, MyFrame::OnTest1)
END_EVENT_TABLE()
// Define my frame constructor
MyFrame::MyFrame(wxWindow *parent, const wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size):
wxFrame(parent, id, title, pos, size)
{
- panel = NULL;
+ SetIcon(wxICON(sample));
+
+ panel = NULL;
}
-void MyFrame::OnQuit(wxCommandEvent& event)
+void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
{
- Close(TRUE);
+ Close(true);
}
-void MyFrame::OnTest1(wxCommandEvent& event)
+void MyFrame::OnTest1(wxCommandEvent& WXUNUSED(event))
{
- MyDialog *dialog = new MyDialog;
- if (dialog->LoadNativeDialog(this, "dialog1"))
- {
-/*
- wxTextCtrl *text = (wxTextCtrl *)wxFindWindowByName("multitext3", dialog);
- if (text)
- text->SetValue("wxWindows resource demo");
-*/
- dialog->SetModal(TRUE);
- dialog->ShowModal();
- }
- dialog->Close(TRUE);
+#if ( defined(__WXPM__) || defined(__WXMSW__) ) && !defined(__WXUNIVERSAL__)
+ MyDialog dialog;
+ if (dialog.LoadNativeDialog(this, wxT("dialog1")))
+ {
+ dialog.ShowModal();
+ }
+#else
+ wxMessageBox(wxT("No native dialog support"),wxT("Platform limitation"));
+#endif
}
BEGIN_EVENT_TABLE(MyDialog, wxDialog)
- EVT_BUTTON(wxID_OK, MyDialog::OnOk)
- EVT_BUTTON(wxID_CANCEL, MyDialog::OnCancel)
+ EVT_BUTTON(wxID_OK, MyDialog::OnOk)
+ EVT_BUTTON(wxID_CANCEL, MyDialog::OnCancel)
END_EVENT_TABLE()
-void MyDialog::OnOk(wxCommandEvent& event)
+void MyDialog::OnOk(wxCommandEvent& WXUNUSED(event))
{
- EndModal(wxID_OK);
+ EndModal(wxID_OK);
}
-void MyDialog::OnCancel(wxCommandEvent& event)
+void MyDialog::OnCancel(wxCommandEvent& WXUNUSED(event))
{
- EndModal(wxID_CANCEL);
+ EndModal(wxID_CANCEL);
}
-
-