]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/statbr95.cpp
fingers crossed..
[wxWidgets.git] / src / msw / statbr95.cpp
index 20df26db30f1e1bee4828e56210f4edd2abafdf4..a9576f40b55f14f4b63bdc8eb4436fccbbb8e50c 100644 (file)
@@ -36,7 +36,7 @@
 #include "wx/msw/private.h"
 #include <windowsx.h>
 
-#if !(defined(__GNUWIN32_OLD__) || defined(__TWIN32__))
+#if defined(__WIN95__) && !((defined(__GNUWIN32_OLD__) || defined(__TWIN32__)) && !defined(__CYGWIN10__))
     #include <commctrl.h>
 #endif
 
@@ -71,10 +71,11 @@ LRESULT APIENTRY wxStatusBarProc(HWND hwnd,
 {
     switch (message) {
         case WM_COMMAND:
+        case WM_DRAWITEM:
+        case WM_MEASUREITEM:
         case WM_SIZE:
         case WM_MOVE:
         case WM_MOUSEMOVE:
-        case WM_MOUSEMOVE:
         case WM_LBUTTONUP:
         case WM_LBUTTONDBLCLK:
         case WM_RBUTTONDOWN:
@@ -123,6 +124,10 @@ bool wxStatusBar95::Create(wxWindow *parent,
 
     DWORD wstyle = WS_CHILD | WS_VISIBLE;
 
+    if ( style & wxCLIP_SIBLINGS )
+        wstyle |= WS_CLIPSIBLINGS;
+
+
     // setting SBARS_SIZEGRIP is perfectly useless: it's always on by default
     // (at least in the version of comctl32.dll I'm using), and the only way to
     // turn it off is to use CCS_TOP style - as we position the status bar
@@ -187,21 +192,21 @@ void wxStatusBar95::CopyFieldsWidth(const int widths[])
 
 void wxStatusBar95::SetFieldsCount(int nFields, const int *widths)
 {
-  // this is Windows limitation
-  wxASSERT_MSG( (nFields > 0) && (nFields < 255), _T("too many fields") );
+    // this is a Windows limitation
+    wxASSERT_MSG( (nFields > 0) && (nFields < 255), _T("too many fields") );
 
-  m_nFields = nFields;
+    m_nFields = nFields;
 
-  CopyFieldsWidth(widths);
-  SetFieldsWidth();
+    CopyFieldsWidth(widths);
+    SetFieldsWidth();
 }
 
-void wxStatusBar95::SetStatusWidths(int n, const int widths[])
+void wxStatusBar95::SetStatusWidths(int WXUNUSED_UNLESS_DEBUG(n), const int widths[])
 {
-  wxASSERT_MSG( n == m_nFields, _T("field number mismatch") );
+    wxASSERT_MSG( n == m_nFields, _T("field number mismatch") );
 
-  CopyFieldsWidth(widths);
-  SetFieldsWidth();
+    CopyFieldsWidth(widths);
+    SetFieldsWidth();
 }
 
 void wxStatusBar95::SetFieldsWidth()
@@ -320,7 +325,7 @@ bool wxStatusBar95::GetFieldRect(int i, wxRect& rect) const
     RECT r;
     if ( !::SendMessage(GetHwnd(), SB_GETRECT, i, (LPARAM)&r) )
     {
-        wxLogLastError("SendMessage(SB_GETRECT)");
+        wxLogLastError(wxT("SendMessage(SB_GETRECT)"));
     }
 
     wxCopyRECTToRect(r, rect);