From 6f48a6d0e78ba918b2a187724bb1fea546022656 Mon Sep 17 00:00:00 2001 From: vipul Date: Thu, 20 Jun 2013 20:17:19 +0530 Subject: [PATCH] New 4.4 UX changes in Tab. Change-Id: Icb9c89f3d863af36c7103d4cd5c8134e86ca2f3a --- src/ui/controls/FUiCtrl_TabPresenter.cpp | 77 ++++++++++++++++++++++--------- src/ui/inc/FUiCtrl_TabPresenter.h | 2 - src/ui/resource/FUi_ResourceTabConfig.cpp | 24 +++++----- 3 files changed, 66 insertions(+), 37 deletions(-) diff --git a/src/ui/controls/FUiCtrl_TabPresenter.cpp b/src/ui/controls/FUiCtrl_TabPresenter.cpp index 1228257..63e953f 100644 --- a/src/ui/controls/FUiCtrl_TabPresenter.cpp +++ b/src/ui/controls/FUiCtrl_TabPresenter.cpp @@ -100,8 +100,6 @@ _TabPresenter::_TabPresenter(void) , __reorderDist(0.0f) , __firstItemIndex(0) , __lastItemIndex(0) - , __selectedLineLeftMargin(0.0f) - , __selectedLineRightMargin(0.0f) , __isScrollEffectEnded(false) , __isScrollEffectStarted(false) , __timerCount(0) @@ -257,8 +255,6 @@ _TabPresenter::Construct(const _Tab& tab) GET_SHAPE_CONFIG(TAB::TAB_MINIMUM_SIZE, __pTab->GetOrientation(), __tabMinimumSize); - GET_SHAPE_CONFIG(TAB::SELECTED_LINE_LEFT_MARGIN, __pTab->GetOrientation(), __selectedLineLeftMargin); - GET_SHAPE_CONFIG(TAB::SELECTED_LINE_RIGHT_MARGIN, __pTab->GetOrientation(), __selectedLineRightMargin); GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), __selectedLine.height); GET_FIXED_VALUE_CONFIG(TAB::FONT_CHANGE_ITEM_COUNT, __pTab->GetOrientation(), __fontChangeItemCount); @@ -292,6 +288,8 @@ _TabPresenter::LoadBitmap(void) { result r = E_SUCCESS; Tizen::Graphics::Bitmap* pBitmap = null; + Tizen::Graphics::Bitmap* pFocusBitmap = null; + Color focusBgColor(0x00000000); //r = GET_BITMAP_CONFIG_N(TAB::VERTICAL_DIVIDER_NORMAL, BITMAP_PIXEL_FORMAT_ARGB8888, __pVerticalLineBitmap); // delete bitmap by critical.kim (2013/03/18) //SysTryLog(NID_UI_CTRL, r == E_SUCCESS, "Failed to locate divider line bitmap."); @@ -311,10 +309,19 @@ _TabPresenter::LoadBitmap(void) r = GET_BITMAP_CONFIG_N(TAB::TAB_BOUNCE_EFFECT_RIGHT, BITMAP_PIXEL_FORMAT_ARGB8888, __pRearScrollingEffectBitmap); SysTryLog(NID_UI_CTRL, r == E_SUCCESS, "Failed to locate overscrolling right bitmap."); - r = GET_BITMAP_CONFIG_N(FOCUSUI::FOCUS, BITMAP_PIXEL_FORMAT_ARGB8888, __pFocusBitmap); + r = GET_BITMAP_CONFIG_N(TAB::ITEM_BG_HIGHLIGHTED, BITMAP_PIXEL_FORMAT_ARGB8888, pFocusBitmap); SysTryLog(NID_UI_CTRL, r == E_SUCCESS, "Failed to locate focus bitmap."); + GET_COLOR_CONFIG(TAB::ITEM_BG_HIGHLIGHTED, focusBgColor); + + if (pFocusBitmap) + { + __pFocusBitmap = _BitmapImpl::GetColorReplacedBitmapN(*(pFocusBitmap), Color::GetColor(COLOR_ID_MAGENTA), focusBgColor); + SysTryLog(NID_UI_CTRL, (__pFocusBitmap != null), "Failed to locate focus item line bitmap."); + } + delete pBitmap; + delete pFocusBitmap; return r; } @@ -564,10 +571,14 @@ _TabPresenter::DrawTextItem(Canvas* pCanvas) float bottomMargin = 0.0f; float leftMargin = 0.0f; float rightMargin = 0.0f; + float lineHeight = 0.0f; + float selectedLineHeight = 0.0f; GET_SHAPE_CONFIG(TAB::TOP_MARGIN, __pTab->GetOrientation(), topMargin); GET_SHAPE_CONFIG(TAB::BOTTOM_MARGIN, __pTab->GetOrientation(), bottomMargin); GET_SHAPE_CONFIG(TAB::ITEM_LEFT_MARGIN, __pTab->GetOrientation(), leftMargin); GET_SHAPE_CONFIG(TAB::ITEM_RIGHT_MARGIN, __pTab->GetOrientation(), rightMargin); + GET_SHAPE_CONFIG(TAB::HEIGHT, __pTab->GetOrientation(), lineHeight); + GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), selectedLineHeight); SetFirstLoadedItemIndex(); SetLastLoadedItemIndex(); @@ -611,8 +622,8 @@ _TabPresenter::DrawTextItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { DrawSelectedItemBackground(pCanvas, itemDrawRect); - __selectedLine.width = __itemWidth - __selectedLineLeftMargin - __selectedLineRightMargin; - __selectedLine.x = itemDrawRect.x + __selectedLineLeftMargin; + __selectedLine.width = __itemWidth; + __selectedLine.x = itemDrawRect.x; } else if (itemStatus == _TABITEM_STATUS_PRESSED) { @@ -697,7 +708,7 @@ _TabPresenter::DrawTextItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { __pTextObject->SetForegroundColor(__pTab->GetSelectedTextColor(), 0, __pTextObject->GetTextLength()); - __selectedLine.y = itemDrawRect.y + itemDrawRect.height; + __selectedLine.y = lineHeight - selectedLineHeight; DrawResourceBitmap(*pCanvas, __selectedLine, __pHorizontalLineBitmap); @@ -758,10 +769,14 @@ _TabPresenter::DrawEditTextItem(Canvas* pCanvas) float bottomMargin = 0.0f; float leftMargin = 0.0f; float rightMargin = 0.0f; + float lineHeight = 0.0f; + float selectedLineHeight = 0.0f; GET_SHAPE_CONFIG(TAB::TOP_MARGIN, __pTab->GetOrientation(), topMargin); GET_SHAPE_CONFIG(TAB::BOTTOM_MARGIN, __pTab->GetOrientation(), bottomMargin); GET_SHAPE_CONFIG(TAB::ITEM_LEFT_MARGIN, __pTab->GetOrientation(), leftMargin); GET_SHAPE_CONFIG(TAB::ITEM_RIGHT_MARGIN, __pTab->GetOrientation(), rightMargin); + GET_SHAPE_CONFIG(TAB::HEIGHT, __pTab->GetOrientation(), lineHeight); + GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), selectedLineHeight); pDrawItem = GetItemAt(__editItemIndex); SysTryReturnVoidResult(NID_UI_CTRL, pDrawItem, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult())); @@ -775,8 +790,8 @@ _TabPresenter::DrawEditTextItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { DrawSelectedItemBackground(pCanvas, itemDrawRect); - __selectedLine.width = __itemWidth - __selectedLineLeftMargin - __selectedLineRightMargin; - __selectedLine.x = itemDrawRect.x + __selectedLineLeftMargin; + __selectedLine.width = __itemWidth; + __selectedLine.x = itemDrawRect.x; } else if (itemStatus == _TABITEM_STATUS_PRESSED) { @@ -861,7 +876,7 @@ _TabPresenter::DrawEditTextItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { __pTextObject->SetForegroundColor(__pTab->GetSelectedTextColor(), 0, __pTextObject->GetTextLength()); - __selectedLine.y = itemDrawRect.y + itemDrawRect.height; + __selectedLine.y = lineHeight - selectedLineHeight; DrawResourceBitmap(*pCanvas, __selectedLine, __pHorizontalLineBitmap); @@ -960,10 +975,14 @@ _TabPresenter::DrawIconItem(Canvas* pCanvas) float iconWidth = 0.0f; float iconHeight = 0.0f; float bottomMargin = 0.0f; + float lineHeight = 0.0f; + float selectedLineHeight = 0.0f; GET_SHAPE_CONFIG(TAB::ICON_WIDTH, __pTab->GetOrientation(), iconWidth); GET_SHAPE_CONFIG(TAB::ICON_HEIGHT, __pTab->GetOrientation(), iconHeight); GET_SHAPE_CONFIG(TAB::BOTTOM_MARGIN, __pTab->GetOrientation(), bottomMargin); + GET_SHAPE_CONFIG(TAB::HEIGHT, __pTab->GetOrientation(), lineHeight); + GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), selectedLineHeight); int startIndex = __firstLoadedItemIndex - 1; int endIndex = __lastLoadedItemIndex + 1; @@ -1003,9 +1022,9 @@ _TabPresenter::DrawIconItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { DrawSelectedItemBackground(pCanvas, itemDrawRect); - __selectedLine.width = __itemWidth - __selectedLineLeftMargin - __selectedLineRightMargin; - __selectedLine.x = itemDrawRect.x + __selectedLineLeftMargin; - __selectedLine.y = itemDrawRect.height - (bottomMargin / 2.0f); + __selectedLine.width = __itemWidth; + __selectedLine.x = itemDrawRect.x; + __selectedLine.y = lineHeight - selectedLineHeight; DrawResourceBitmap(*pCanvas, __selectedLine, __pHorizontalLineBitmap); @@ -1064,10 +1083,14 @@ _TabPresenter::DrawEditIconItem(Canvas* pCanvas) float iconWidth = 0.0f; float iconHeight = 0.0f; float bottomMargin = 0.0f; + float lineHeight = 0.0f; + float selectedLineHeight = 0.0f; GET_SHAPE_CONFIG(TAB::ICON_WIDTH, __pTab->GetOrientation(), iconWidth); GET_SHAPE_CONFIG(TAB::ICON_HEIGHT, __pTab->GetOrientation(), iconHeight); GET_SHAPE_CONFIG(TAB::BOTTOM_MARGIN, __pTab->GetOrientation(), bottomMargin); + GET_SHAPE_CONFIG(TAB::HEIGHT, __pTab->GetOrientation(), lineHeight); + GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), selectedLineHeight); pDrawItem = GetItemAt(__editItemIndex); SysTryReturnVoidResult(NID_UI_CTRL, pDrawItem, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult())); @@ -1081,9 +1104,9 @@ _TabPresenter::DrawEditIconItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { DrawSelectedItemBackground(pCanvas, itemDrawRect); - __selectedLine.width = __itemWidth - __selectedLineLeftMargin - __selectedLineRightMargin; - __selectedLine.x = itemDrawRect.x + __selectedLineLeftMargin; - __selectedLine.y = itemDrawRect.height - (bottomMargin / 2.0f); + __selectedLine.width = __itemWidth; + __selectedLine.x = itemDrawRect.x; + __selectedLine.y = lineHeight - selectedLineHeight; DrawResourceBitmap(*pCanvas, __selectedLine, __pHorizontalLineBitmap); } @@ -1147,6 +1170,8 @@ _TabPresenter::DrawItem(Canvas* pCanvas) float iconWidth = 0.0f; float iconHeight = 0.0f; float iconGap = 0.0f; + float lineHeight = 0.0f; + float selectedLineHeight = 0.0f; GET_SHAPE_CONFIG(TAB::TOP_MARGIN, __pTab->GetOrientation(), topMarginTextOnly); GET_SHAPE_CONFIG(TAB::BOTTOM_MARGIN, __pTab->GetOrientation(), bottomMarginTextOnly); @@ -1157,6 +1182,8 @@ _TabPresenter::DrawItem(Canvas* pCanvas) GET_SHAPE_CONFIG(TAB::ICON_TEXT_ICON_WIDTH, __pTab->GetOrientation(), iconWidth); GET_SHAPE_CONFIG(TAB::ICON_TEXT_ICON_HEIGHT, __pTab->GetOrientation(), iconHeight); GET_FIXED_VALUE_CONFIG(TAB::ICON_TEXT_GAP, __pTab->GetOrientation(), iconGap); + GET_SHAPE_CONFIG(TAB::HEIGHT, __pTab->GetOrientation(), lineHeight); + GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), selectedLineHeight); int startIndex = __firstLoadedItemIndex - 1; int endIndex = __lastLoadedItemIndex + 1; @@ -1196,8 +1223,8 @@ _TabPresenter::DrawItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { DrawSelectedItemBackground(pCanvas, itemDrawRect); - __selectedLine.width = __itemWidth - __selectedLineLeftMargin - __selectedLineRightMargin; - __selectedLine.x = itemDrawRect.x + __selectedLineLeftMargin; + __selectedLine.width = __itemWidth; + __selectedLine.x = itemDrawRect.x; } else if (itemStatus == _TABITEM_STATUS_PRESSED) { @@ -1322,7 +1349,7 @@ _TabPresenter::DrawItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { __pTextObject->SetForegroundColor(__pTab->GetSelectedTextColor(), 0, __pTextObject->GetTextLength()); - __selectedLine.y = itemDrawRect.height - bottomMargin; + __selectedLine.y = lineHeight - selectedLineHeight; DrawResourceBitmap(*pCanvas, __selectedLine, __pHorizontalLineBitmap); @@ -1391,6 +1418,8 @@ _TabPresenter::DrawEditIconTextItem(Canvas* pCanvas) float iconWidth = 0.0f; float iconHeight = 0.0f; float iconGap = 0.0f; + float lineHeight = 0.0f; + float selectedLineHeight = 0.0f; GET_SHAPE_CONFIG(TAB::TOP_MARGIN, __pTab->GetOrientation(), topMarginTextOnly); GET_SHAPE_CONFIG(TAB::BOTTOM_MARGIN, __pTab->GetOrientation(), bottomMarginTextOnly); @@ -1401,6 +1430,8 @@ _TabPresenter::DrawEditIconTextItem(Canvas* pCanvas) GET_SHAPE_CONFIG(TAB::ICON_TEXT_ICON_WIDTH, __pTab->GetOrientation(), iconWidth); GET_SHAPE_CONFIG(TAB::ICON_TEXT_ICON_HEIGHT, __pTab->GetOrientation(), iconHeight); GET_FIXED_VALUE_CONFIG(TAB::ICON_TEXT_GAP, __pTab->GetOrientation(), iconGap); + GET_SHAPE_CONFIG(TAB::HEIGHT, __pTab->GetOrientation(), lineHeight); + GET_SHAPE_CONFIG(TAB::SELECTED_LINE_HEIGHT, __pTab->GetOrientation(), selectedLineHeight); pDrawItem = GetItemAt(__editItemIndex); SysTryReturnVoidResult(NID_UI_CTRL, pDrawItem, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult())); @@ -1416,8 +1447,8 @@ _TabPresenter::DrawEditIconTextItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { DrawSelectedItemBackground(pCanvas, itemDrawRect); - __selectedLine.width = __itemWidth - __selectedLineLeftMargin - __selectedLineRightMargin; - __selectedLine.x = itemDrawRect.x + __selectedLineLeftMargin; + __selectedLine.width = __itemWidth; + __selectedLine.x = itemDrawRect.x; } else if (itemStatus == _TABITEM_STATUS_PRESSED) { @@ -1545,7 +1576,7 @@ _TabPresenter::DrawEditIconTextItem(Canvas* pCanvas) if (itemStatus == _TABITEM_STATUS_SELECTED) { __pTextObject->SetForegroundColor(__pTab->GetSelectedTextColor(), 0, __pTextObject->GetTextLength()); - __selectedLine.y = itemDrawRect.height - bottomMargin; + __selectedLine.y = lineHeight - selectedLineHeight; DrawResourceBitmap(*pCanvas, __selectedLine, __pHorizontalLineBitmap); } diff --git a/src/ui/inc/FUiCtrl_TabPresenter.h b/src/ui/inc/FUiCtrl_TabPresenter.h index d2f050a..88303be 100644 --- a/src/ui/inc/FUiCtrl_TabPresenter.h +++ b/src/ui/inc/FUiCtrl_TabPresenter.h @@ -269,8 +269,6 @@ private: int __firstLoadedItemIndex; int __lastLoadedItemIndex; - float __selectedLineLeftMargin; - float __selectedLineRightMargin; bool __isScrollEffectEnded; bool __isScrollEffectStarted; int __timerCount; diff --git a/src/ui/resource/FUi_ResourceTabConfig.cpp b/src/ui/resource/FUi_ResourceTabConfig.cpp index b3cf354..08e6011 100644 --- a/src/ui/resource/FUi_ResourceTabConfig.cpp +++ b/src/ui/resource/FUi_ResourceTabConfig.cpp @@ -24,25 +24,25 @@ START_UI_CONFIG(TAB); { - ADD_COLOR_CONFIG(ITEM_BG_NORMAL, $B0513); - ADD_COLOR_CONFIG(ITEM_BG_PRESSED, $B0513); + ADD_COLOR_CONFIG(ITEM_BG_NORMAL, $B0511); + ADD_COLOR_CONFIG(ITEM_BG_PRESSED, $B0514P1); ADD_COLOR_CONFIG(ITEM_BG_EFFECT_PRESSED, $B0514P1); - ADD_COLOR_CONFIG(ITEM_BG_SELECTED, $B0513); - ADD_COLOR_CONFIG(ITEM_BG_HIGHLIGHTED, $B0513); + ADD_COLOR_CONFIG(ITEM_BG_SELECTED, $B0511); + ADD_COLOR_CONFIG(ITEM_BG_HIGHLIGHTED, $B0514P2); ADD_COLOR_CONFIG(ITEM_BG_DISABLED, $B0513); ADD_COLOR_CONFIG(ITEM_TEXT_NORMAL, $B052L6); ADD_COLOR_CONFIG(ITEM_TEXT_PRESSED, $B052L6); ADD_COLOR_CONFIG(ITEM_TEXT_SELECTED, $B052L6P); - ADD_COLOR_CONFIG(ITEM_TEXT_HIGHLIGHTED, $B052L1P); + ADD_COLOR_CONFIG(ITEM_TEXT_HIGHLIGHTED, $B052L6); ADD_COLOR_CONFIG(ITEM_TEXT_DISABLED, $B052L6); ADD_COLOR_CONFIG(DIVIDER_LEFT_HALF, $B0221); ADD_COLOR_CONFIG(DIVIDER_RIGHT_HALF, $B0222); //ADD_IMAGE_CONFIG(VERTICAL_DIVIDER_NORMAL, #00_divider_line.#.png); - ADD_IMAGE_CONFIG(ITEM_SELECTED, #00_tab_focus.#.png); + ADD_IMAGE_CONFIG(ITEM_SELECTED, #00_tab_select_bar.#.png); ADD_IMAGE_CONFIG(ITEM_BG_NORMAL, #00_tab_bg.#.png); ADD_IMAGE_CONFIG(ITEM_BG_PRESSED, #00_tab_bg.#.png); ADD_IMAGE_CONFIG(ITEM_BG_SELECTED, #00_tab_bg.#.png); - ADD_IMAGE_CONFIG(ITEM_BG_HIGHLIGHTED, #00_tab_bg.#.png); + ADD_IMAGE_CONFIG(ITEM_BG_HIGHLIGHTED, #00_tab_focus.#.png); ADD_IMAGE_CONFIG(ITEM_BG_DISABLED, #00_tab_bg.#.png); ADD_IMAGE_CONFIG(ITEM_BG_EFFECT_PRESSED, #00_tab_press_ef.#.png); ADD_IMAGE_CONFIG(ITEM_BG_EFFECT_SELECTED, #00_tab_press_ef.#.png); @@ -63,12 +63,12 @@ START_UI_CONFIG(TAB); ADD_FIXED_VALUE_CONFIG(ITEM_MAX_COUNT, 4); ADD_SHAPE_CONFIG(LEFT_MARGIN, 16); ADD_SHAPE_CONFIG(RIGHT_MARGIN, 16); - ADD_SHAPE_CONFIG(SELECTED_LINE_LEFT_MARGIN, 16); - ADD_SHAPE_CONFIG(SELECTED_LINE_RIGHT_MARGIN, 16); - ADD_SHAPE_CONFIG(SELECTED_LINE_HEIGHT, 3); + //ADD_SHAPE_CONFIG(SELECTED_LINE_LEFT_MARGIN, 16); + //ADD_SHAPE_CONFIG(SELECTED_LINE_RIGHT_MARGIN, 16); + ADD_SHAPE_CONFIG(SELECTED_LINE_HEIGHT, 10); ADD_SHAPE_CONFIG(SCREEN_WIDTH, 720); ADD_SHAPE_CONFIG(SCREEN_HEIGHT, _SCREEN_HEIGHT_); - ADD_SHAPE_CONFIG(HEIGHT, 111); + ADD_SHAPE_CONFIG(HEIGHT, 96); ADD_FIXED_VALUE_CONFIG(FONT_CHANGE_ITEM_COUNT, 3); ADD_SHAPE_CONFIG(FONT_SIZE_01, 32); ADD_SHAPE_CONFIG(FONT_SIZE_02, 28); @@ -99,7 +99,7 @@ START_UI_CONFIG(TAB); START_UI_CONFIG_MODE(1280x720); { - ADD_SHAPE_CONFIG(HEIGHT, 91); + ADD_SHAPE_CONFIG(HEIGHT, 96); ADD_SHAPE_CONFIG(SCREEN_WIDTH, 1280); ADD_SHAPE_CONFIG(SCREEN_HEIGHT, 720); ADD_SHAPE_CONFIG(LEFT_MARGIN, 34); -- 2.7.4