X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1248b41f9f71110347659db8c54c75786eba23c6..3c31306c74e878e6888b6c73a44a337516717d73:/src/motif/toplevel.cpp diff --git a/src/motif/toplevel.cpp b/src/motif/toplevel.cpp index a46d5170bc..bfa9a8a982 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,10 +17,6 @@ // 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" @@ -69,8 +65,7 @@ static void wxTLWEventHandler( Widget wid, void wxTopLevelWindowMotif::PreDestroy() { - if ( (GetWindowStyleFlag() & wxDIALOG_MODAL) != wxDIALOG_MODAL ) - wxModelessWindows.DeleteObject(this); + wxModelessWindows.DeleteObject(this); m_icons.m_icons.Empty(); @@ -82,7 +77,7 @@ void wxTopLevelWindowMotif::PreDestroy() XtRemoveEventHandler( (Widget)GetClientWidget(), ButtonPressMask | ButtonReleaseMask | PointerMotionMask | KeyPressMask, - FALSE, + False, wxTLWEventHandler, (XtPointer)this ); } @@ -95,7 +90,7 @@ wxTopLevelWindowMotif::~wxTopLevelWindowMotif() void wxTopLevelWindowMotif::Init() { - m_isShown = FALSE; + m_isShown = false; } bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, @@ -110,14 +105,14 @@ 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; + if( !retval ) return false; // Intercept CLOSE messages from the window manager Widget shell = (Widget)GetShellWidget(); @@ -134,7 +129,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, @@ -149,6 +144,8 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, if( XmIsMotifWMRunning( shell ) ) { int decor = 0 ; + if( !(m_windowStyle & wxNO_BORDER) ) + decor |= MWM_DECOR_BORDER; if( m_windowStyle & wxRESIZE_BORDER ) decor |= MWM_DECOR_RESIZEH; if( m_windowStyle & wxSYSTEM_MENU ) @@ -174,14 +171,14 @@ bool wxTopLevelWindowMotif::Create( wxWindow *parent, wxWindowID id, // no-decorations case. if( ( m_windowStyle & wxCAPTION ) != wxCAPTION ) XtVaSetValues( shell, - XmNoverrideRedirect, TRUE, + XmNoverrideRedirect, True, NULL ); } XtAddEventHandler( (Widget)GetClientWidget(), - ButtonPressMask | ButtonReleaseMask | + ButtonPressMask | ButtonReleaseMask | PointerMotionMask | KeyPressMask, - FALSE, + False, wxTLWEventHandler, (XtPointer)this ); @@ -266,17 +263,17 @@ 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; + return false; } bool wxTopLevelWindowMotif::IsFullScreen() const { // TODO, see wxGTK - return FALSE; + return false; } void wxTopLevelWindowMotif::Restore() @@ -285,7 +282,7 @@ void wxTopLevelWindowMotif::Restore() if( shell ) XtVaSetValues( shell, - XmNiconic, FALSE, + XmNiconic, False, NULL ); } @@ -295,7 +292,7 @@ void wxTopLevelWindowMotif::Iconize( bool iconize ) if( !shell ) return; if( !iconize ) - Show( TRUE ); + Show( true ); XtVaSetValues( shell, XmNiconic, (Boolean)iconize, @@ -307,19 +304,19 @@ bool wxTopLevelWindowMotif::IsIconized() const Widget shell = GetShell( this ); if( !shell ) - return FALSE; + return false; Boolean iconic; XtVaGetValues( shell, XmNiconic, &iconic, NULL ); - return iconic; + return (iconic == True); } void wxTopLevelWindowMotif::Maximize( bool maximize ) { - Show( TRUE ); + Show( true ); if( maximize ) Restore(); @@ -327,14 +324,14 @@ void wxTopLevelWindowMotif::Maximize( bool maximize ) bool wxTopLevelWindowMotif::IsMaximized() const { - return FALSE; + return false; } -void wxTopLevelWindowMotif::SetSizeHints( int minW, int minH, - int maxW, int maxH, - int incW, int incH ) +void wxTopLevelWindowMotif::DoSetSizeHints( int minW, int minH, + int maxW, int maxH, + int incW, int incH ) { - wxTopLevelWindowBase::SetSizeHints( minW, minH, maxW, maxH, incW, incH ); + wxTopLevelWindowBase::DoSetSizeHints( minW, minH, maxW, maxH, incW, incH ); int count = 0; Arg args[6]; @@ -346,7 +343,7 @@ void wxTopLevelWindowMotif::SetSizeHints( 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 ) @@ -393,7 +390,7 @@ void wxTLWEventHandler( Widget wid, else { // An attempt to implement OnCharHook by calling OnCharHook first; - // if this returns TRUE, set continueToDispatch to False + // if this returns true, set continueToDispatch to False // (don't continue processing). // Otherwise set it to True and call OnChar. wxKeyEvent keyEvent( wxEVT_CHAR );