X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c0ed460c2e7802793d591c84f3cfdbff159c5549..8775b357008a14fd2acdd2e2c70600f1c6346504:/src/msw/gauge95.cpp diff --git a/src/msw/gauge95.cpp b/src/msw/gauge95.cpp index f671fb2c7e..c43b527cb6 100644 --- a/src/msw/gauge95.cpp +++ b/src/msw/gauge95.cpp @@ -29,13 +29,11 @@ #include "wx/msw/gauge95.h" #include "wx/msw/private.h" -#if defined(__WIN95__) && !defined(__GNUWIN32__) -#include +#if defined(__WIN95__) && !(defined(__GNUWIN32_OLD__) || defined(__TWIN32__)) + #include #endif -#if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxGauge95, wxControl) -#endif bool wxGauge95::Create(wxWindow *parent, wxWindowID id, int range, @@ -46,7 +44,9 @@ bool wxGauge95::Create(wxWindow *parent, wxWindowID id, const wxString& name) { SetName(name); +#if wxUSE_VALIDATORS SetValidator(validator); +#endif // wxUSE_VALIDATORS if (parent) parent->AddChild(this); m_rangeMax = range; @@ -58,16 +58,30 @@ bool wxGauge95::Create(wxWindow *parent, wxWindowID id, m_windowStyle = style; if ( id == -1 ) - m_windowId = (int)NewControlId(); + m_windowId = (int)NewControlId(); else - m_windowId = id; + m_windowId = id; int x = pos.x; int y = pos.y; int width = size.x; int height = size.y; - long msFlags = WS_CHILD | WS_VISIBLE | WS_TABSTOP; + long msFlags = WS_CHILD | WS_VISIBLE; + +#ifndef PBS_VERTICAL +#define PBS_VERTICAL 0x04 +#endif + + if (m_windowStyle & wxGA_VERTICAL) + msFlags |= PBS_VERTICAL; + +#ifndef PBS_SMOOTH +#define PBS_SMOOTH 0x01 +#endif + + if (m_windowStyle & wxGA_SMOOTH) + msFlags |= PBS_SMOOTH; HWND wx_button = CreateWindowEx(MakeExtendedStyle(m_windowStyle), PROGRESS_CLASS, NULL, msFlags, @@ -86,7 +100,7 @@ bool wxGauge95::Create(wxWindow *parent, wxWindowID id, if (width == -1) width = 50; if (height == -1) - height = 50; + height = 28; SetSize(x, y, width, height); ShowWindow((HWND) GetHWND(), SW_SHOW); @@ -94,38 +108,6 @@ bool wxGauge95::Create(wxWindow *parent, wxWindowID id, return TRUE; } -void wxGauge95::SetSize(int x, int y, int width, int height, int sizeFlags) -{ - int currentX, currentY; - GetPosition(¤tX, ¤tY); - int x1 = x; - int y1 = y; - int w1 = width; - int h1 = height; - - if (x == -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE)) - x1 = currentX; - if (y == -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE)) - y1 = currentY; - - AdjustForParentClientOrigin(x1, y1, sizeFlags); - - // If we're prepared to use the existing size, then... - if (width == -1 && height == -1 && ((sizeFlags & wxSIZE_AUTO) != wxSIZE_AUTO)) - { - GetSize(&w1, &h1); - } - - // Deal with default size (using -1 values) - if (w1<=0) - w1 = DEFAULT_ITEM_WIDTH; - - if (h1<=0) - h1 = DEFAULT_ITEM_HEIGHT; - - MoveWindow((HWND) GetHWND(), x1, y1, w1, h1, TRUE); -} - void wxGauge95::SetShadowWidth(int w) { } @@ -168,14 +150,24 @@ int wxGauge95::GetValue(void) const return m_gaugePos; } -void wxGauge95::SetForegroundColour(const wxColour& col) +bool wxGauge95::SetForegroundColour(const wxColour& col) { - m_foregroundColour = col ; + if ( !wxControl::SetForegroundColour(col) ) + return FALSE; + + m_foregroundColour = col ; + + return TRUE; } -void wxGauge95::SetBackgroundColour(const wxColour& col) +bool wxGauge95::SetBackgroundColour(const wxColour& col) { - m_backgroundColour = col ; + if ( !wxControl::SetBackgroundColour(col) ) + return FALSE; + + m_backgroundColour = col ; + + return TRUE; } #endif // wxUSE_GAUGE