X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8b7b0d67b0e564e4a7d58362b4edcc1c39f5406c..7325e21c4fda06b0f4a2ea5fd72169bae06a0d19:/src/motif/toplevel.cpp diff --git a/src/motif/toplevel.cpp b/src/motif/toplevel.cpp index e5cd9e6717..5ce626267a 100644 --- a/src/motif/toplevel.cpp +++ b/src/motif/toplevel.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: motif/toplevel.cpp +// Name: src/motif/toplevel.cpp // Purpose: wxTopLevelWindow Motif implementation // Author: Mattia Barbon // Modified by: @@ -17,15 +17,14 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma implementation "toplevel.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" #include "wx/toplevel.h" -#include "wx/app.h" + +#ifndef WX_PRECOMP + #include "wx/app.h" +#endif #ifdef __VMS__ #define XtDisplay XTDISPLAY @@ -69,14 +68,7 @@ static void wxTLWEventHandler( Widget wid, void wxTopLevelWindowMotif::PreDestroy() { -#ifdef __VMS -#pragma message disable codcauunr -#endif - if ( (GetWindowStyleFlag() & wxDIALOG_MODAL) != wxDIALOG_MODAL ) - wxModelessWindows.DeleteObject(this); -#ifdef __VMS -#pragma message enable codcauunr -#endif + wxModelessWindows.DeleteObject(this); m_icons.m_icons.Empty(); @@ -116,12 +108,12 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, if ( parent ) parent->AddChild(this); - + wxTopLevelWindows.Append(this); m_windowId = ( id > -1 ) ? id : NewControlId(); - bool retval = DoCreate( parent, id, title, pos, size, style, name ); + bool retval = XmDoCreateTLW( parent, id, title, pos, size, style, name ); if( !retval ) return false; @@ -140,7 +132,7 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, // Modified Steve Hammes for Motif 2.0 #if (XmREVISION > 1 || XmVERSION > 1) XmAddWMProtocolCallback( shell, WM_DELETE_WINDOW, - (XtCallbackProc)wxCloseTLWCallback, + (XtCallbackProc)wxCloseTLWCallback, (XtPointer)this ); #elif XmREVISION == 1 XmAddWMProtocolCallback( shell, WM_DELETE_WINDOW, @@ -165,7 +157,7 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, ( m_windowStyle & wxTINY_CAPTION_HORIZ ) || ( m_windowStyle & wxTINY_CAPTION_VERT ) ) decor |= MWM_DECOR_TITLE; - if( m_windowStyle & wxTHICK_FRAME ) + if( m_windowStyle & wxRESIZE_BORDER ) decor |= MWM_DECOR_BORDER; if( m_windowStyle & wxMINIMIZE_BOX ) decor |= MWM_DECOR_MINIMIZE; @@ -187,7 +179,7 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, } XtAddEventHandler( (Widget)GetClientWidget(), - ButtonPressMask | ButtonReleaseMask | + ButtonPressMask | ButtonReleaseMask | PointerMotionMask | KeyPressMask, False, wxTLWEventHandler, @@ -274,8 +266,8 @@ WXWidget wxTopLevelWindowMotif::GetShellWidget() const return (WXWidget) GetShell( this ); } -bool wxTopLevelWindowMotif::ShowFullScreen( bool show, - long style ) +bool wxTopLevelWindowMotif::ShowFullScreen( bool WXUNUSED(show), + long WXUNUSED(style) ) { // TODO, see wxGTK return false; @@ -322,7 +314,7 @@ bool wxTopLevelWindowMotif::IsIconized() const XmNiconic, &iconic, NULL ); - return iconic; + return (iconic == True); } void wxTopLevelWindowMotif::Maximize( bool maximize ) @@ -354,7 +346,7 @@ void wxTopLevelWindowMotif::DoSetSizeHints( int minW, int minH, if( incW > -1 ) { XtSetArg( args[count], XmNwidthInc, incW ); ++count; } if( incH > -1 ) { XtSetArg( args[count], XmNheightInc, incH ); ++count; } - XtSetValues( (Widget)GetShellWidget(), args, count ); + XtSetValues( (Widget)GetShellWidget(), args, count ); } bool wxTopLevelWindowMotif::SetShape( const wxRegion& region ) @@ -434,4 +426,3 @@ void wxTLWEventHandler( Widget wid, *continueToDispatch = True; } -