]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/dialog.cpp
* Created a new wxObject method: wxObject::CopyObject(wxObject&)
[wxWidgets.git] / src / gtk / dialog.cpp
index fc6e7041ff00e9feda87912aaf946dd58c87dc37..894f22bf1e9c34de4be35bd03cc5ff812d07115e 100644 (file)
@@ -133,26 +133,31 @@ gtk_dialog_map_callback( GtkWidget *widget, wxDialog *win )
     
     /* all this is for Motif Window Manager "hints" and is supposed to be
        recognized by other WM as well. not tested. */
-    long decor = (long) GDK_DECOR_ALL;
-    long func = (long) GDK_FUNC_ALL;
+    long decor = (long) GDK_DECOR_BORDER;
+    long func = (long) GDK_FUNC_MOVE ;
     
-    if ((win->m_windowStyle & wxCAPTION) == 0)
+    if ((win->m_windowStyle & wxCAPTION) != 0)
        decor |= GDK_DECOR_TITLE;
-    if ((win->m_windowStyle & wxSYSTEM_MENU) == 0)
-       decor |= GDK_DECOR_MENU;
-    if ((win->m_windowStyle & wxMINIMIZE_BOX) == 0)
+    if ((win->m_windowStyle & wxSYSTEM_MENU) != 0)
+    {
+       decor |= GDK_DECOR_MENU;
+       func |= GDK_FUNC_CLOSE;
+    }
+    if ((win->m_windowStyle & wxMINIMIZE_BOX) != 0)
     {
        func |= GDK_FUNC_MINIMIZE;
        decor |= GDK_DECOR_MINIMIZE;
     }
-    if ((win->m_windowStyle & wxMAXIMIZE_BOX) == 0)
+    if ((win->m_windowStyle & wxMAXIMIZE_BOX) != 0)
     {
        decor |= GDK_DECOR_MAXIMIZE;
        func |= GDK_FUNC_MAXIMIZE;           
     }
-    if ((win->m_windowStyle & wxRESIZE_BORDER) == 0)
-       func |= GDK_FUNC_RESIZE;
-       
+    if ((win->m_windowStyle & wxRESIZE_BORDER) != 0)
+    {
+       func |= GDK_FUNC_RESIZE;
+       decor |= GDK_DECOR_RESIZEH;
+    }
     gdk_window_set_decorations( win->m_widget->window, (GdkWMDecoration)decor);
     gdk_window_set_functions( win->m_widget->window, (GdkWMFunction)func);