Added size constants to allow drawn control parts to match the window variant,

initially on Mac


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2007-02-08 17:16:24 +00:00
parent de4a74e2d0
commit f8e1a81f3e
4 changed files with 35 additions and 2 deletions

View File

@@ -74,6 +74,10 @@ enum
wxCONTROL_SELECTED = 0x00000020, // selected item in e.g. listbox
wxCONTROL_CHECKED = 0x00000040, // (check/radio button) is checked
wxCONTROL_CHECKABLE = 0x00000080, // (menu) item can be checked
wxCONTROL_SIZE_NORMAL = 0x00000100,
wxCONTROL_SIZE_LARGE = 0x00000200,
wxCONTROL_SIZE_SMALL = 0x00000400,
wxCONTROL_SIZE_MINI = 0x00000800,
wxCONTROL_UNDETERMINED = wxCONTROL_CHECKABLE // (check) undetermined state
};
\end{verbatim}

View File

@@ -62,6 +62,11 @@ enum
wxCONTROL_CHECKABLE = 0x00000080, // (menu) item can be checked
wxCONTROL_UNDETERMINED = wxCONTROL_CHECKABLE, // (check) undetermined state
wxCONTROL_SIZE_NORMAL = 0x00000100,
wxCONTROL_SIZE_LARGE = 0x00000200,
wxCONTROL_SIZE_SMALL = 0x00000400,
wxCONTROL_SIZE_MINI = 0x00000800,
wxCONTROL_FLAGS_MASK = 0x000000ff,
// this is a pseudo flag not used directly by wxRenderer but rather by some

View File

@@ -1347,6 +1347,11 @@ void wxComboCtrlBase::DrawButton( wxDC& dc, const wxRect& rect, int paintBg )
}
// Draw standard button
if (GetParent()->GetWindowVariant() == wxWINDOW_VARIANT_SMALL)
drawState |= wxCONTROL_SIZE_SMALL;
else if (GetParent()->GetWindowVariant() == wxWINDOW_VARIANT_MINI)
drawState |= wxCONTROL_SIZE_MINI;
wxRendererNative::Get().DrawComboBoxDropButton(this,
dc,
drawRect,
@@ -1380,6 +1385,11 @@ void wxComboCtrlBase::DrawButton( wxDC& dc, const wxRect& rect, int paintBg )
dc.DrawRectangle(rect);
}
if (GetParent()->GetWindowVariant() == wxWINDOW_VARIANT_SMALL)
drawState |= wxCONTROL_SIZE_SMALL;
else if (GetParent()->GetWindowVariant() == wxWINDOW_VARIANT_MINI)
drawState |= wxCONTROL_SIZE_MINI;
wxRendererNative::Get().DrawPushButton(this,
dc,
drawRect,

View File

@@ -473,8 +473,16 @@ wxRendererMac::DrawComboBoxDropButton(wxWindow *win,
const wxRect& rect,
int flags)
{
int kind;
if (flags & wxCONTROL_SIZE_SMALL)
kind = kThemeArrowButtonSmall;
else if (flags & wxCONTROL_SIZE_MINI)
kind = kThemeArrowButtonMini;
else
kind = kThemeArrowButton;
DrawMacThemeButton(win, dc, rect, flags,
kThemeArrowButton, kThemeAdornmentArrowDownArrow);
kind, kThemeAdornmentArrowDownArrow);
}
void
@@ -483,7 +491,13 @@ wxRendererMac::DrawPushButton(wxWindow *win,
const wxRect& rect,
int flags)
{
int kind;
if (flags & wxCONTROL_SIZE_SMALL)
kind = kThemeBevelButtonSmall;
else
kind = kThemeBevelButton;
DrawMacThemeButton(win, dc, rect, flags,
kThemeBevelButton, kThemeAdornmentNone);
kind, kThemeAdornmentNone);
}