-// Lists to keep track of windows, so we can disable/enable them
-// for modal dialogs
-wxList wxModalDialogs;
-wxList wxModelessWindows; // Frames and modeless dialogs
-extern wxList wxPendingDelete;
-
-#if !USE_SHARED_LIBRARY
-IMPLEMENT_DYNAMIC_CLASS(wxDialog, wxPanel)
-
-BEGIN_EVENT_TABLE(wxDialog, wxPanel)
- EVT_BUTTON(wxID_OK, wxDialog::OnOK)
- EVT_BUTTON(wxID_APPLY, wxDialog::OnApply)
- EVT_BUTTON(wxID_CANCEL, wxDialog::OnCancel)
- EVT_CHAR_HOOK(wxDialog::OnCharHook)
- EVT_SYS_COLOUR_CHANGED(wxDialog::OnSysColourChanged)
- EVT_CLOSE(wxDialog::OnCloseWindow)
-END_EVENT_TABLE()
+#define wxDIALOG_DEFAULT_WIDTH 500
+#define wxDIALOG_DEFAULT_HEIGHT 500
+
+// ----------------------------------------------------------------------------
+// globals
+// ----------------------------------------------------------------------------
+
+// all modal dialogs currently shown
+static wxWindowList wxModalDialogs;
+
+// ----------------------------------------------------------------------------
+// wxWin macros
+// ----------------------------------------------------------------------------
+
+#if wxUSE_EXTENDED_RTTI
+WX_DEFINE_FLAGS( wxDialogStyle )
+
+WX_BEGIN_FLAGS( wxDialogStyle )
+ // new style border flags, we put them first to
+ // use them for streaming out
+ WX_FLAGS_MEMBER(wxBORDER_SIMPLE)
+ WX_FLAGS_MEMBER(wxBORDER_SUNKEN)
+ WX_FLAGS_MEMBER(wxBORDER_DOUBLE)
+ WX_FLAGS_MEMBER(wxBORDER_RAISED)
+ WX_FLAGS_MEMBER(wxBORDER_STATIC)
+ WX_FLAGS_MEMBER(wxBORDER_NONE)
+
+ // old style border flags
+ WX_FLAGS_MEMBER(wxSIMPLE_BORDER)
+ WX_FLAGS_MEMBER(wxSUNKEN_BORDER)
+ WX_FLAGS_MEMBER(wxDOUBLE_BORDER)
+ WX_FLAGS_MEMBER(wxRAISED_BORDER)
+ WX_FLAGS_MEMBER(wxSTATIC_BORDER)
+ WX_FLAGS_MEMBER(wxNO_BORDER)
+
+ // standard window styles
+ WX_FLAGS_MEMBER(wxTAB_TRAVERSAL)
+ WX_FLAGS_MEMBER(wxCLIP_CHILDREN)
+
+ // dialog styles
+ WX_FLAGS_MEMBER(wxDIALOG_MODAL)
+ WX_FLAGS_MEMBER(wxDIALOG_MODELESS)
+ WX_FLAGS_MEMBER(wxNO_3D)
+ WX_FLAGS_MEMBER(wxWS_EX_VALIDATE_RECURSIVELY)
+ WX_FLAGS_MEMBER(wxSTAY_ON_TOP)
+ WX_FLAGS_MEMBER(wxCAPTION)
+ WX_FLAGS_MEMBER(wxTHICK_FRAME)
+ WX_FLAGS_MEMBER(wxSYSTEM_MENU)
+ WX_FLAGS_MEMBER(wxRESIZE_BORDER)
+ WX_FLAGS_MEMBER(wxRESIZE_BOX)
+ WX_FLAGS_MEMBER(wxCLOSE_BOX)
+ WX_FLAGS_MEMBER(wxMAXIMIZE_BOX)
+ WX_FLAGS_MEMBER(wxMINIMIZE_BOX)
+WX_END_FLAGS( wxDialogStyle )
+
+IMPLEMENT_DYNAMIC_CLASS_XTI(wxDialog, wxTopLevelWindow,"wx/dialog.h")
+
+WX_BEGIN_PROPERTIES_TABLE(wxDialog)
+ WX_PROPERTY( Title,wxString, SetTitle, GetTitle, wxString() , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
+ WX_PROPERTY_FLAGS( WindowStyle , wxDialogStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
+WX_END_PROPERTIES_TABLE()
+
+WX_BEGIN_HANDLERS_TABLE(wxDialog)
+WX_END_HANDLERS_TABLE()
+
+WX_CONSTRUCTOR_6( wxDialog , wxWindow* , Parent , wxWindowID , Id , wxString , Title , wxPoint , Position , wxSize , Size , long , WindowStyle)