]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/wincmn.cpp
Updates for Y positioning
[wxWidgets.git] / src / common / wincmn.cpp
index ce68b5ac34ac2e916e0eaa1d26ae815de77ce137..26cdbc173e44b7d8ec5c09053fb60becf48f6270 100644 (file)
@@ -167,6 +167,10 @@ void wxWindowBase::InitBase()
     m_caret = (wxCaret *)NULL;
 #endif // wxUSE_CARET
 
+#if wxUSE_PALETTE
+    m_hasCustomPalette = FALSE;
+#endif // wxUSE_PALETTE
+
     // Whether we're using the current theme for this window (wxGTK only for now)
     m_themeEnabled = FALSE;
 }
@@ -397,14 +401,18 @@ void wxWindowBase::Centre(int direction)
     wxRect rect = wxGetClientDisplayRect();
     wxSize size (rect.width,rect.height);
 
+#ifndef __WXMGL__ // FIXME - temporary dirty hack!!
     if (posParent.x >= 0)  // if parent is on the main display
+#endif
     {
         if (xNew < 0)
             xNew = 0;
         else if (xNew+width > size.x)
             xNew = size.x-width-1;
     }
+#ifndef __WXMGL__ // FIXME - temporary dirty hack!!
     if (posParent.y >= 0)  // if parent is on the main display
+#endif
     {
         if (yNew+height > size.y)
             yNew = size.y-height-1;
@@ -729,6 +737,31 @@ bool wxWindowBase::SetFont(const wxFont& font)
     return TRUE;
 }
 
+#if wxUSE_PALETTE
+
+void wxWindowBase::SetPalette(const wxPalette& pal)
+{
+    m_hasCustomPalette = TRUE;
+    m_palette = pal;
+
+    // VZ: can anyone explain me what do we do here?
+    wxWindowDC d((wxWindow *) this);
+    d.SetPalette(pal);
+}
+
+wxWindow *wxWindowBase::GetAncestorWithCustomPalette() const
+{
+    wxWindow *win = (wxWindow *)this;
+    while ( win && !win->HasCustomPalette() )
+    {
+        win = win->GetParent();
+    }
+
+    return win;
+}
+
+#endif // wxUSE_PALETTE
+
 #if wxUSE_CARET
 void wxWindowBase::SetCaret(wxCaret *caret)
 {
@@ -1002,7 +1035,7 @@ void wxWindowBase::OnHelp(wxHelpEvent& event)
 #endif // wxUSE_HELP
 
 // ----------------------------------------------------------------------------
-// tooltips
+// tooltipsroot.Replace("\\", "/");
 // ----------------------------------------------------------------------------
 
 #if wxUSE_TOOLTIPS
@@ -1161,9 +1194,6 @@ bool wxWindowBase::Layout()
         GetClientSize(&w, &h);
 
         GetSizer()->SetDimension( 0, 0, w, h );
-#if defined __WXPM__
-        OS2Layout(w, h);
-#endif
     }
     else
     {