__isButtonTextColorSetByUser[i] = false;
}
__pAccessibilityListener = new (std::nothrow) FooterItemAccessibilityListener(this);
+
+ SetFocusNavigateEnabled(false);
}
_Toolbar::~_Toolbar(void)
__itemTransBackgroundColor[_BUTTON_STATUS_NORMAL].SetAlpha(0x00);
__itemTransBackgroundColor[_BUTTON_STATUS_DISABLED].SetAlpha(0x00);
__itemTransBackgroundColor[_BUTTON_STATUS_PRESSED].SetAlpha(0x7F);
- __itemTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0x00);
+ __itemTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0xFF);
__itemTransBackgroundColor[_BUTTON_STATUS_SELECTED].SetAlpha(0x00);
GET_COLOR_CONFIG(HEADER::BUTTON_TRANSLUCENT_BG_NORMAL, __buttonTransBackgroundColor[_BUTTON_STATUS_NORMAL]);
__buttonTransBackgroundColor[_BUTTON_STATUS_NORMAL].SetAlpha(0x00);
__buttonTransBackgroundColor[_BUTTON_STATUS_DISABLED].SetAlpha(0x00);
__buttonTransBackgroundColor[_BUTTON_STATUS_PRESSED].SetAlpha(0x7F);
- __buttonTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0x00);
+ __buttonTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0xFF);
GET_COLOR_CONFIG(HEADER::BUTTON_TRANSLUCENT_TEXT_NORMAL, __buttonTransTextColor[_BUTTON_STATUS_NORMAL]);
GET_COLOR_CONFIG(HEADER::BUTTON_TRANSLUCENT_TEXT_DISABLED, __buttonTransTextColor[_BUTTON_STATUS_DISABLED]);
__itemTransBackgroundColor[_BUTTON_STATUS_NORMAL].SetAlpha(0x00);
__itemTransBackgroundColor[_BUTTON_STATUS_DISABLED].SetAlpha(0x00);
__itemTransBackgroundColor[_BUTTON_STATUS_PRESSED].SetAlpha(0x7F);
- __itemTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0x00);
+ __itemTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0xFF);
__itemTransBackgroundColor[_BUTTON_STATUS_SELECTED].SetAlpha(0x00);
__buttonTransBackgroundColor[_BUTTON_STATUS_NORMAL].SetAlpha(0x00);
__buttonTransBackgroundColor[_BUTTON_STATUS_DISABLED].SetAlpha(0x00);
__buttonTransBackgroundColor[_BUTTON_STATUS_PRESSED].SetAlpha(0x7F);
- __buttonTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0x00);
+ __buttonTransBackgroundColor[_BUTTON_STATUS_HIGHLIGHTED].SetAlpha(0xFF);
GET_COLOR_CONFIG(FOOTER::BUTTON_TRANSLUCENT_TEXT_NORMAL, __buttonTransTextColor[_BUTTON_STATUS_NORMAL]);
GET_COLOR_CONFIG(FOOTER::BUTTON_TRANSLUCENT_TEXT_DISABLED, __buttonTransTextColor[_BUTTON_STATUS_DISABLED]);
__pItems.push_back(pButton);
__itemCount++;
+ SetFocusNavigateEnabled(true);
+
AttachChild(*pButton);
ApplyUserGUI(TOOLBAR_ITEM, pButton);
__pItems.insert(__pItems.begin() + itemIndex, pButton);
__itemCount++;
+ SetFocusNavigateEnabled(true);
+
AttachChild(*pButton);
ApplyUserGUI(TOOLBAR_ITEM, pButton);
__pButtonItems[position] = null;
}
+ if (__itemCount == 0 && __pButtonItems[LEFT_BUTTON] == null && __pButtonItems[RIGHT_BUTTON] == null)
+ {
+ SetFocusNavigateEnabled(false);
+ }
+
RearrangeItems();
return E_SUCCESS;
__itemCount--;
+ if (__itemCount == 0 && __pButtonItems[LEFT_BUTTON] == null && __pButtonItems[RIGHT_BUTTON] == null)
+ {
+ SetFocusNavigateEnabled(false);
+ }
+
__pItems.erase(__pItems.begin() + itemIndex);
RearrangeItems();
AttachChild(*pButton);
+ SetFocusNavigateEnabled(true);
+
if (__style != TOOLBAR_SOFTKEY)
{
ApplyUserGUI(TOOLBAR_BUTTON, __pButtonItems[position]);
}
}
+ if (__itemCount == 0 && __pButtonItems[LEFT_BUTTON] == null && __pButtonItems[RIGHT_BUTTON] == null)
+ {
+ SetFocusNavigateEnabled(false);
+ }
+ else
+ {
+ SetFocusNavigateEnabled(true);
+ }
+
return E_SUCCESS;
}
{
if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[LEFT_BUTTON]->Invalidate();
+
__pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount;
{
if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[RIGHT_BUTTON]->Invalidate();
+
__pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount + 1;
{
if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[LEFT_BUTTON]->Invalidate();
+
__pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount;
{
if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[RIGHT_BUTTON]->Invalidate();
+
__pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount;
{
if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[LEFT_BUTTON]->Invalidate();
+
__pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount;
{
if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[RIGHT_BUTTON]->Invalidate();
+
__pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount + 1;
{
if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[LEFT_BUTTON]->Invalidate();
+
__pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount;
{
if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
{
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_NORMAL);
+ __pButtonItems[RIGHT_BUTTON]->Invalidate();
+
__pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_HIGHLIGHTED);
__lastHighlightedItemIndex = __highlightedItemIndex = __itemCount;
bool
_Toolbar::OnKeyPressed(const _Control& source, const _KeyInfo& keyInfo)
{
+ _KeyCode keyCode = keyInfo.GetKeyCode();
+
+ if (IsFocusModeStateEnabled() == true && keyCode == _KEY_ENTER)
+ {
+ if (__itemCount != 0)
+ {
+ if (__pButtonItems[LEFT_BUTTON])
+ {
+ if (__pButtonItems[RIGHT_BUTTON]) // L Item R
+ {
+ if (__highlightedItemIndex < __itemCount)
+ {
+ if (__pItems.at(__highlightedItemIndex)->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pItems.at(__highlightedItemIndex)->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ else if (__highlightedItemIndex == __itemCount)
+ {
+ if (__pButtonItems[LEFT_BUTTON])
+ {
+ if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ else if (__highlightedItemIndex == __itemCount + 1)
+ {
+ if (__pButtonItems[RIGHT_BUTTON])
+ {
+ if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ else // L Item
+ {
+ if (__highlightedItemIndex < __itemCount)
+ {
+ if (__pItems.at(__highlightedItemIndex)->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pItems.at(__highlightedItemIndex)->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ else if (__highlightedItemIndex == __itemCount)
+ {
+ if (__pButtonItems[LEFT_BUTTON])
+ {
+ if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ }
+ else // L is null
+ {
+ if (__pButtonItems[RIGHT_BUTTON]) // Item R
+ {
+ if (__highlightedItemIndex < __itemCount)
+ {
+ if (__pItems.at(__highlightedItemIndex)->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pItems.at(__highlightedItemIndex)->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ else if (__highlightedItemIndex == __itemCount)
+ {
+ if (__pButtonItems[RIGHT_BUTTON])
+ {
+ if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ else // Item
+ {
+ if (__highlightedItemIndex < __itemCount)
+ {
+ if (__pItems.at(__highlightedItemIndex)->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pItems.at(__highlightedItemIndex)->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ }
+ else // __itemCount == 0
+ {
+ if (__pButtonItems[LEFT_BUTTON])
+ {
+ if (__pButtonItems[RIGHT_BUTTON]) // L R
+ {
+ if (__highlightedItemIndex == 0)
+ {
+ if (__pButtonItems[LEFT_BUTTON])
+ {
+ if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ else if (__highlightedItemIndex == 1)
+ {
+ if (__pButtonItems[RIGHT_BUTTON])
+ {
+ if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ else // L
+ {
+ if (__highlightedItemIndex == 0)
+ {
+ if (__pButtonItems[LEFT_BUTTON])
+ {
+ if (__pButtonItems[LEFT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[LEFT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ }
+ else // L is null
+ {
+ if (__pButtonItems[RIGHT_BUTTON]) // R
+ {
+ if (__highlightedItemIndex == 0)
+ {
+ if (__pButtonItems[RIGHT_BUTTON]->GetButtonStatus() != _BUTTON_STATUS_DISABLED)
+ {
+ __pButtonItems[RIGHT_BUTTON]->SetButtonStatus(_BUTTON_STATUS_PRESSED);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ Invalidate(true);
+
return false;
}