m_maximizeOnShow = FALSE;
m_macNoEraseUpdateRgn = NewRgn() ;
m_macNeedsErasing = false ;
+ m_macWindow = NULL ;
}
bool wxTopLevelWindowMac::Create(wxWindow *parent,
wxTopLevelWindowMac::~wxTopLevelWindowMac()
{
- wxToolTip::NotifyWindowDelete(m_macWindow) ;
- UMADisposeWindow( (WindowRef) m_macWindow ) ;
-
+ if ( m_macWindow )
+ {
+ wxToolTip::NotifyWindowDelete(m_macWindow) ;
+ UMADisposeWindow( (WindowRef) m_macWindow ) ;
+ }
+
wxRemoveMacWindowAssociation( this ) ;
wxTopLevelWindows.DeleteObject(this);
bool wxTopLevelWindowMac::IsIconized() const
{
- // mac dialogs cannot be iconized
+ // mac dialogs cannot be iconized
return FALSE;
}
WindowClass wclass = 0;
WindowAttributes attr = kWindowNoAttributes ;
- if ( HasFlag(wxTINY_CAPTION_HORIZ) || HasFlag(wxTINY_CAPTION_VERT) )
+ if ( HasFlag( wxFRAME_TOOL_WINDOW) || HasFlag(wxTINY_CAPTION_HORIZ) || HasFlag(wxTINY_CAPTION_VERT) )
{
wclass = kFloatingWindowClass ;
if ( HasFlag(wxTINY_CAPTION_VERT) )
{
if ( HasFlag( wxDIALOG_MODAL ) )
{
- wclass = kMovableModalWindowClass ;
+ wclass = kDocumentWindowClass ; // kMovableModalWindowClass ;
}
else
{
event.m_x += m_x;
event.m_y += m_y;
-/*
- wxPoint origin = GetClientAreaOrigin() ;
-
- event.m_x += origin.x ;
- event.m_y += origin.y ;
-*/
-
event.m_timeStamp = ev->when;
event.SetEventObject(this);
if ( wxTheApp->s_captureWindow )
wxTheApp->s_captureWindow->ScreenToClient( &x , &y ) ;
event.m_x = x ;
event.m_y = y ;
+ event.SetEventObject( wxTheApp->s_captureWindow ) ;
wxTheApp->s_captureWindow->GetEventHandler()->ProcessEvent( event ) ;
+
if ( ev->what == mouseUp )
{
wxTheApp->s_captureWindow = NULL ;