]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/stattext.cpp
more MS-DOS stuff in generic wxFileDialog
[wxWidgets.git] / src / os2 / stattext.cpp
index cb8e29c0b35b11ff8e3820065b70db4bb817780a..5b214b098733d69fb65e94d114d3ddd10298f114 100644 (file)
@@ -66,6 +66,15 @@ bool wxStaticText::Create(
         lSstyle |= DT_RIGHT;
     else
         lSstyle |= DT_LEFT;
+    //
+    // If the parent is a scrolled window the controls must
+    // have this style or they will overlap the scrollbars
+    //
+    if (pParent)
+        if (pParent->IsKindOf(CLASSINFO(wxScrolledWindow)) ||
+            pParent->IsKindOf(CLASSINFO(wxGenericScrolledWindow)))
+            lSstyle |= WS_CLIPSIBLINGS;
+
     m_hWnd = (WXHWND)::WinCreateWindow( (HWND)GetHwndOf(pParent) // Parent window handle
                                        ,WC_STATIC                // Window class
                                        ,(PSZ)rsLabel.c_str()     // Initial Text
@@ -91,6 +100,13 @@ bool wxStaticText::Create(
                       ,sizeof(LONG)
                       ,(PVOID)&lColor
                      );
+    lColor = (LONG)m_backgroundColour.GetPixel();
+
+    ::WinSetPresParam( m_hWnd
+                      ,PP_BACKGROUNDCOLOR
+                      ,sizeof(LONG)
+                      ,(PVOID)&lColor
+                     );
 
     SubclassWin(m_hWnd);
     wxControl::SetFont(pParent->GetFont());
@@ -159,6 +175,27 @@ wxSize wxStaticText::DoGetBestSize() const
                  );
 } // end of wxStaticText::DoGetBestSize
 
+void wxStaticText::DoSetSize(
+  int                               nX
+, int                               nY
+, int                               nWidth
+, int                               nHeight
+, int                               nSizeFlags
+)
+{
+    //
+    // We need to refresh the window after changing its size as the standard
+    // control doesn't always update itself properly.
+    //
+    wxStaticTextBase::DoSetSize( nX
+                                ,nY
+                                ,nWidth
+                                ,nHeight
+                                ,nSizeFlags
+                               );
+    Refresh();
+} // end of wxStaticText::DoSetSize
+
 bool wxStaticText::SetFont(
   const wxFont&                     rFont
 )