]> git.saurik.com Git - wxWidgets.git/blobdiff - src/motif/toplevel.cpp
Removed a deprecated wxBitmap constructor, and some
[wxWidgets.git] / src / motif / toplevel.cpp
index b0180f7a8bd23c1392c7bb939034eaf987cdf01c..9968142e4146c101ba4cef6008d759aeff63560e 100644 (file)
 #include "wx/app.h"
 
 #ifdef __VMS__
-    #pragma message disable nosimpint
+#define XtDisplay XTDISPLAY
+#define XtParent XTPARENT
+#define XtScreen XTSCREEN
+#define XtWindow XTWINDOW
+#pragma message disable nosimpint
 #endif
 
 #include <Xm/Xm.h>
@@ -60,7 +64,7 @@ static void wxTLWEventHandler( Widget wid,
 // wxTopLevelWindowMotif implementation
 // ===========================================================================
 
-wxTopLevelWindowMotif::~wxTopLevelWindowMotif()
+void wxTopLevelWindowMotif::PreDestroy()
 {
     wxTopLevelWindows.DeleteObject(this);
 
@@ -81,13 +85,14 @@ wxTopLevelWindowMotif::~wxTopLevelWindowMotif()
                               wxTLWEventHandler,
                               (XtPointer)this );
     }
+}
 
-    DoDestroy();
-
+wxTopLevelWindowMotif::~wxTopLevelWindowMotif()
+{
     SetMainWidget( (WXWidget)0 );
 
     // If this is the last top-level window, exit.
-    if (wxTheApp && (wxTopLevelWindows.Number() == 0))
+    if (wxTheApp && (wxTopLevelWindows.GetCount() == 0))
     {
         wxTheApp->SetTopWindow(NULL);
 
@@ -249,7 +254,7 @@ WXWidget wxTopLevelWindowMotif::GetShellWidget() const
 }
 
 bool wxTopLevelWindowMotif::ShowFullScreen( bool show,
-                                            long style = wxFULLSCREEN_ALL )
+                                            long style )
 {
     // TODO, see wxGTK
     return FALSE;
@@ -271,7 +276,7 @@ void wxTopLevelWindowMotif::Restore()
                        NULL );
 }
 
-void wxTopLevelWindowMotif::Iconize( bool iconize = TRUE )
+void wxTopLevelWindowMotif::Iconize( bool iconize )
 {
     Widget shell = GetShell( this );
     if( !shell ) return;
@@ -299,7 +304,7 @@ bool wxTopLevelWindowMotif::IsIconized() const
     return iconic;
 }
 
-void wxTopLevelWindowMotif::Maximize( bool maximize = TRUE )
+void wxTopLevelWindowMotif::Maximize( bool maximize )
 {
     Show( TRUE );
 
@@ -312,6 +317,25 @@ bool wxTopLevelWindowMotif::IsMaximized() const
     return FALSE;
 }
 
+void wxTopLevelWindowMotif::SetSizeHints( int minW, int minH,
+                                          int maxW, int maxH,
+                                          int incW, int incH )
+{
+    wxTopLevelWindowBase::SetSizeHints( minW, minH, maxW, maxH, incW, incH );
+
+    int count = 0;
+    Arg args[6];
+
+    if( minW > -1 ) { XtSetArg( args[count], XmNminWidth,  minW ); ++count; }
+    if( minH > -1 ) { XtSetArg( args[count], XmNminHeight, minH ); ++count; }
+    if( maxW > -1 ) { XtSetArg( args[count], XmNmaxWidth,  maxW ); ++count; }
+    if( maxH > -1 ) { XtSetArg( args[count], XmNmaxHeight, maxH ); ++count; }
+    if( incW > -1 ) { XtSetArg( args[count], XmNwidthInc,  incW ); ++count; }
+    if( incH > -1 ) { XtSetArg( args[count], XmNheightInc, incH ); ++count; }
+
+    XtSetValues( (Widget)GetShellWidget(), args, count ); 
+}
+
 // ---------------------------------------------------------------------------
 // Callback definition
 // ---------------------------------------------------------------------------