X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/79132cd30222d8c20c2232a58edc99461f9fe813..9c112555198f51fcec71106530cddba95a17f3dc:/src/xrc/xh_dlg.cpp diff --git a/src/xrc/xh_dlg.cpp b/src/xrc/xh_dlg.cpp index 0305962c80..4cab711187 100644 --- a/src/xrc/xh_dlg.cpp +++ b/src/xrc/xh_dlg.cpp @@ -8,7 +8,7 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "xh_dlg.h" #endif @@ -19,11 +19,15 @@ #pragma hdrstop #endif +#if wxUSE_XRC + #include "wx/xrc/xh_dlg.h" #include "wx/dialog.h" +#include "wx/frame.h" #include "wx/log.h" #include "wx/intl.h" +IMPLEMENT_DYNAMIC_CLASS(wxDialogXmlHandler, wxXmlResourceHandler) wxDialogXmlHandler::wxDialogXmlHandler() : wxXmlResourceHandler() { @@ -37,13 +41,15 @@ wxDialogXmlHandler::wxDialogXmlHandler() : wxXmlResourceHandler() XRC_ADD_STYLE(wxCLOSE_BOX); XRC_ADD_STYLE(wxDIALOG_MODAL); XRC_ADD_STYLE(wxDIALOG_MODELESS); + XRC_ADD_STYLE(wxDIALOG_NO_PARENT); XRC_ADD_STYLE(wxNO_3D); XRC_ADD_STYLE(wxTAB_TRAVERSAL); XRC_ADD_STYLE(wxWS_EX_VALIDATE_RECURSIVELY); - XRC_ADD_STYLE(wxCLIP_CHILDREN); + XRC_ADD_STYLE(wxDIALOG_EX_METAL); XRC_ADD_STYLE(wxMAXIMIZE_BOX); XRC_ADD_STYLE(wxMINIMIZE_BOX); + XRC_ADD_STYLE(wxFRAME_SHAPED); AddWindowStyles(); } @@ -60,15 +66,17 @@ wxObject *wxDialogXmlHandler::DoCreateResource() GetName()); if (HasParam(wxT("size"))) - dlg->SetClientSize(GetSize()); + dlg->SetClientSize(GetSize(wxT("size"), dlg)); if (HasParam(wxT("pos"))) dlg->Move(GetPosition()); + if (HasParam(wxT("icon"))) + dlg->SetIcon(GetIcon(wxT("icon"), wxART_FRAME_ICON)); SetupWindow(dlg); CreateChildren(dlg); - if (GetBool(wxT("centered"), FALSE)) + if (GetBool(wxT("centered"), false)) dlg->Centre(); return dlg; @@ -78,3 +86,5 @@ bool wxDialogXmlHandler::CanHandle(wxXmlNode *node) { return IsOfClass(node, wxT("wxDialog")); } + +#endif // wxUSE_XRC