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}
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
}
// 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,
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,
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
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);
}