::SetWindowText((HWND) m_hWnd, wxEmptyString);
- SetFont(parent->GetFont());
-
if ( m_windowStyle & wxSL_LABELS )
{
// Finally, create max value static item
}
void wxSlider95::DoGetSize(int *width, int *height) const
-{
- GetSize(width, height);
-}
-
-void wxSlider95::GetSize(int *width, int *height) const
{
RECT rect;
rect.left = -1; rect.right = -1; rect.top = -1; rect.bottom = -1;
if (m_staticValue)
wxFindMaxSize(m_staticValue, &rect);
- *width = rect.right - rect.left;
- *height = rect.bottom - rect.top;
+ if ( width )
+ *width = rect.right - rect.left;
+ if ( height )
+ *height = rect.bottom - rect.top;
}
void wxSlider95::GetPosition(int *x, int *y) const
(int) min_len, cy, TRUE);
x_offset += (int)(min_len + cx);
- int slider_length = (int)(w1 - x_offset - max_len - cx);
+ // slider_length = (total width available) - (width used so far)
+ // - (width of max label) - (border)
+ int slider_length = (int)(w1 - (x_offset-x) - max_len - cx);
int slider_height = h1;
if (slider_height < 0 )
{
int new_width = (int)(wxMax(min_len, max_len));
int valueHeight = (int)cyf;
-/*** Suggested change by George Tasker - remove this block...
-#ifdef __WIN32__
- // For some reason, under Win95, the text edit control has
- // a lot of space before the first character
- new_width += 3*cx;
-#endif
- ... and replace with following line: */
new_width += cx;
// The height needs to be a bit bigger under Win95 if
(int) min_len, cy, TRUE);
y_offset += cy;
- int slider_length = (int)(h1 - y_offset - cy - cy);
+ // slider_length = (total height available) - (height used so far)
+ // - (height of max label) - (border)
+ int slider_length = (int)(h1 - (y_offset-y) - cy - cy);
int slider_width = w1;
if (slider_width < 0 )