X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2158f4d798650d7f8cc59ba36e115679b0effe1b..fb8d7eb7a880f1f2e32d8830f9c5e12b2536e05f:/src/cocoa/dialog.mm?ds=sidebyside diff --git a/src/cocoa/dialog.mm b/src/cocoa/dialog.mm index e51faffa37..72a380243c 100644 --- a/src/cocoa/dialog.mm +++ b/src/cocoa/dialog.mm @@ -4,9 +4,9 @@ // Author: David Elliott // Modified by: // Created: 2002/12/15 -// RCS-ID: $Id: +// RCS-ID: $Id$ // Copyright: 2002 David Elliott -// Licence: wxWidgets licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" @@ -19,6 +19,7 @@ #include "wx/settings.h" #endif //WX_PRECOMP +#include "wx/modalhook.h" #include "wx/cocoa/autorelease.h" #include "wx/cocoa/string.h" @@ -57,13 +58,9 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID winid, if (parent) parent->AddChild(this); - NSRect cocoaRect = NSMakeRect(300,300,200,200); + unsigned int cocoaStyle = NSWindowStyleForWxStyle(style); - unsigned int cocoaStyle = 0; - cocoaStyle |= NSTitledWindowMask; - cocoaStyle |= NSClosableWindowMask; - cocoaStyle |= NSMiniaturizableWindowMask; - cocoaStyle |= NSResizableWindowMask; + NSRect cocoaRect = MakeInitialNSWindowContentRect(pos,size,cocoaStyle); m_cocoaNSWindow = NULL; SetNSPanel([[NSPanel alloc] initWithContentRect:cocoaRect styleMask:cocoaStyle backing:NSBackingStoreBuffered defer:NO]); @@ -103,6 +100,10 @@ bool wxDialog::Show(bool show) if(show) { wxAutoNSAutoreleasePool pool; + + if (CanDoLayoutAdaptation()) + DoLayoutAdaptation(); + InitDialog(); if(IsModal()) { // ShowModal() will show the dialog @@ -127,6 +128,8 @@ bool wxDialog::Show(bool show) // is stopped (via EndModal()) it returns the exit code. int wxDialog::ShowModal() { + WX_HOOK_MODAL_DIALOG(); + wxCHECK_MSG(!IsModal(),GetReturnCode(),wxT("wxDialog::ShowModal called within its own modal loop")); // Show(true) will set m_isShown = true @@ -169,4 +172,3 @@ void wxDialog::EndModal(int retCode) SetReturnCode(retCode); Show(false); } -