_ButtonStatus
_Button::GetButtonStatus(void) const
{
- _ButtonStatus status = __buttonStatus;
-
- if (IsEnabled() == false && status != _BUTTON_STATUS_SELECTED)
- {
- status = _BUTTON_STATUS_DISABLED;
- }
-
- return status;
+ return __buttonStatus;
}
result
void
_ButtonPresenter::OnAncestorEnableStateChanged(const _Control& control)
{
- if (!__pButton->IsEnabled())
+ if (__pButton->GetButtonStatus() == _BUTTON_STATUS_SELECTED)
{
return;
}
- if (__pButton->GetButtonStatus() == _BUTTON_STATUS_PRESSED)
+ if (__pButton->IsEnabled())
{
__pButton->SetButtonStatus(_BUTTON_STATUS_NORMAL);
__pButton->Invalidate();
}
+ else
+ {
+ __pButton->SetButtonStatus(_BUTTON_STATUS_DISABLED);
+ __pButton->Invalidate();
+ }
return;
}
__pItems.at(itemIndex)->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED, fire);
__pItems.at(itemIndex)->ShowUnderlineBitmap(true);
+ __pItems.at(itemIndex)->Draw();
__highlightedItemIndex = itemIndex;
__lastHighlightedItemIndex = __highlightedItemIndex;
}
else
{
- pButton->SetUserDefinedTextArea(FloatRectangle(sideMargin, buttonTextTopMargin, buttonItemWidth - sideMargin * 2, buttonItemHeight - buttonTextTopMargin * 2));
+ if (__style == TOOLBAR_HEADER_SEGMENTED_WITH_TITLE || __style == TOOLBAR_TAB_WITH_TITLE)
+ {
+ pButton->SetUserDefinedTextArea(FloatRectangle(sideMargin, (buttonItemHeight - largeTabTextHeight) / 2,
+ buttonItemWidth - sideMargin * 2, largeTabTextHeight));
+ }
+ else
+ {
+ pButton->SetUserDefinedTextArea(FloatRectangle(sideMargin, buttonTextTopMargin, buttonItemWidth - sideMargin * 2, buttonItemHeight - buttonTextTopMargin * 2));
+ }
}
}
else