X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/92e898b0b47f5b881453bf75778c5f8f08b38c89..b9efe021b554fa3967d1442cf758435c5cd5ae8f:/src/xrc/xh_frame.cpp diff --git a/src/xrc/xh_frame.cpp b/src/xrc/xh_frame.cpp index 34327e067e..98d996fd13 100644 --- a/src/xrc/xh_frame.cpp +++ b/src/xrc/xh_frame.cpp @@ -8,7 +8,7 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "xh_frame.h" #endif @@ -19,11 +19,15 @@ #pragma hdrstop #endif +#if wxUSE_XRC + #include "wx/xrc/xh_frame.h" #include "wx/frame.h" +#include "wx/dialog.h" // to get wxDEFAULT_DIALOG_STYLE #include "wx/log.h" #include "wx/intl.h" +IMPLEMENT_DYNAMIC_CLASS(wxFrameXmlHandler, wxXmlResourceHandler) wxFrameXmlHandler::wxFrameXmlHandler() : wxXmlResourceHandler() { @@ -35,7 +39,10 @@ wxFrameXmlHandler::wxFrameXmlHandler() : wxXmlResourceHandler() XRC_ADD_STYLE(wxSYSTEM_MENU); XRC_ADD_STYLE(wxRESIZE_BORDER); XRC_ADD_STYLE(wxRESIZE_BOX); + XRC_ADD_STYLE(wxCLOSE_BOX); + XRC_ADD_STYLE(wxFRAME_NO_TASKBAR); + XRC_ADD_STYLE(wxFRAME_SHAPED); XRC_ADD_STYLE(wxFRAME_TOOL_WINDOW); XRC_ADD_STYLE(wxFRAME_FLOAT_ON_PARENT); XRC_ADD_STYLE(wxMAXIMIZE_BOX); @@ -45,7 +52,7 @@ wxFrameXmlHandler::wxFrameXmlHandler() : wxXmlResourceHandler() 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(wxFRAME_EX_METAL); AddWindowStyles(); } @@ -62,15 +69,17 @@ wxObject *wxFrameXmlHandler::DoCreateResource() GetName()); if (HasParam(wxT("size"))) - frame->SetClientSize(GetSize()); + frame->SetClientSize(GetSize(wxT("size"), frame)); if (HasParam(wxT("pos"))) frame->Move(GetPosition()); + if (HasParam(wxT("icon"))) + frame->SetIcon(GetIcon(wxT("icon"), wxART_FRAME_ICON)); SetupWindow(frame); CreateChildren(frame); - if (GetBool(wxT("centered"), FALSE)) + if (GetBool(wxT("centered"), false)) frame->Centre(); return frame; @@ -80,3 +89,5 @@ bool wxFrameXmlHandler::CanHandle(wxXmlNode *node) { return IsOfClass(node, wxT("wxFrame")); } + +#endif // wxUSE_XRC