X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/670f9935630beb2123a5ca62894ae92a3f0efa4f..76e7cfab8fdb0c7862fd07e427af54181717fc62:/src/motif/toplevel.cpp diff --git a/src/motif/toplevel.cpp b/src/motif/toplevel.cpp index 5ce626267a..248b5465c1 100644 --- a/src/motif/toplevel.cpp +++ b/src/motif/toplevel.cpp @@ -4,7 +4,6 @@ // Author: Mattia Barbon // Modified by: // Created: 12/10/2002 -// RCS-ID: $Id$ // Copyright: (c) Mattia Barbon // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -21,16 +20,14 @@ #include "wx/wxprec.h" #include "wx/toplevel.h" +#include "wx/settings.h" +#include "wx/app.h" #ifndef WX_PRECOMP #include "wx/app.h" #endif #ifdef __VMS__ -#define XtDisplay XTDISPLAY -#define XtParent XTPARENT -#define XtScreen XTSCREEN -#define XtWindow XTWINDOW #pragma message disable nosimpint #endif @@ -70,8 +67,6 @@ void wxTopLevelWindowMotif::PreDestroy() { wxModelessWindows.DeleteObject(this); - m_icons.m_icons.Empty(); - DestroyChildren(); // MessageDialog and FileDialog do not have a client widget @@ -112,6 +107,9 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, wxTopLevelWindows.Append(this); m_windowId = ( id > -1 ) ? id : NewControlId(); + // MBN: More backward compatible, but uglier + m_font = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT); + m_inheritFont = true; bool retval = XmDoCreateTLW( parent, id, title, pos, size, style, name ); @@ -154,8 +152,7 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, if( m_windowStyle & wxSYSTEM_MENU ) decor |= MWM_DECOR_MENU; if( ( m_windowStyle & wxCAPTION ) || - ( m_windowStyle & wxTINY_CAPTION_HORIZ ) || - ( m_windowStyle & wxTINY_CAPTION_VERT ) ) + ( m_windowStyle & wxTINY_CAPTION) ) decor |= MWM_DECOR_TITLE; if( m_windowStyle & wxRESIZE_BORDER ) decor |= MWM_DECOR_BORDER; @@ -369,7 +366,7 @@ static void wxCloseTLWCallback( Widget WXUNUSED(widget), XtPointer client_data, closeEvent.SetEventObject( tlw ); // May delete the dialog (with delayed deletion) - tlw->GetEventHandler()->ProcessEvent(closeEvent); + tlw->HandleWindowEvent(closeEvent); } void wxTLWEventHandler( Widget wid, @@ -388,7 +385,7 @@ void wxTLWEventHandler( Widget wid, { wxevent.SetEventObject( tlw ); wxevent.SetId( tlw->GetId() ); - tlw->GetEventHandler()->ProcessEvent( wxevent ); + tlw->HandleWindowEvent( wxevent ); } else { @@ -402,7 +399,7 @@ void wxTLWEventHandler( Widget wid, keyEvent.SetEventObject( tlw ); keyEvent.SetId( tlw->GetId() ); keyEvent.SetEventType( wxEVT_CHAR_HOOK ); - if( tlw->GetEventHandler()->ProcessEvent( keyEvent ) ) + if( tlw->HandleWindowEvent( keyEvent ) ) { *continueToDispatch = False; return; @@ -414,10 +411,10 @@ void wxTLWEventHandler( Widget wid, keyEvent.SetEventType( wxEVT_KEY_DOWN ); // Only process OnChar if OnKeyDown didn't swallow it - if( !tlw->GetEventHandler()->ProcessEvent( keyEvent ) ) + if( !tlw->HandleWindowEvent( keyEvent ) ) { keyEvent.SetEventType( wxEVT_CHAR ); - tlw->GetEventHandler()->ProcessEvent( keyEvent ); + tlw->HandleWindowEvent( keyEvent ); } } }