Merge "Apply auto_hide style to popup." into tizen_2.2
authorkeuckdo.bang <keuckdo.bang@samsung.com>
Wed, 26 Jun 2013 13:26:25 +0000 (13:26 +0000)
committerGerrit Code Review <gerrit@gerrit.vlan144.tizendev.org>
Wed, 26 Jun 2013 13:26:25 +0000 (13:26 +0000)
src/ui/controls/FUiCtrl_ContextMenu.cpp
src/ui/controls/FUiCtrl_OptionMenuItem.cpp
src/ui/controls/FUiCtrl_OptionMenuPresenter.cpp
src/ui/controls/FUiCtrl_TabBar.cpp
src/ui/controls/FUiCtrl_TabBarPresenter.cpp
src/ui/inc/FUiCtrl_ContextMenu.h
src/ui/inc/FUiCtrl_TabBar.h
src/ui/inc/FUiCtrl_TabBarItem.h
src/ui/resource/FUi_ResourceContextMenuConfig.cpp
src/ui/resource/FUi_ResourceOptionMenuConfig.cpp

index 413b541..43e3e3b 100644 (file)
@@ -65,6 +65,7 @@ _ContextMenu::_ContextMenu(const FloatPoint& point, enum ContextMenuCoreStyle st
        , __pBackgroundEffectBitmap(null)
        , __dropPosition(CONTEXT_MENU_CORE_DROP_POSITION_INVALID)
        , __layout(_CONTROL_ORIENTATION_PORTRAIT)
+       , __rotation(_CONTROL_ROTATION_0)
        , __pScrollPanel(null)
 {
        __backgroundColor = Color(255, 255, 255, 255);
@@ -289,6 +290,7 @@ _ContextMenu::OnAttachedToMainTree(void)
        result r = E_SUCCESS;
 
        __layout = _ControlManager::GetInstance()->GetOrientation();
+       __rotation = _ControlManager::GetInstance()->GetScreenRotation();
        __isAttachedToMainTree = true;
        _Control* pOwner = GetOwner();
        if (pOwner == null)
@@ -1210,21 +1212,25 @@ _ContextMenu::OnVisibleStateChanged(void)
 }
 
 void
-_ContextMenu::OnChangeLayout(_ControlOrientation orientation)
+_ContextMenu::OnChangeLayout(_ControlRotation rotation)
 {
+       _ControlOrientation orientation;
+
+       orientation = GetOwner()->GetOrientation();
+
        GET_SHAPE_CONFIG(CONTEXTMENU::ITEM_MAX_COUNT, orientation, __showItemMaxCount);
 
        if (__isAttachedToMainTree == true)
        {
-               if (__layout != orientation)
+               if(__rotation != rotation)
                {
                        SetVisibleState(false);
                }
        }
 
        __layout = orientation;
+       __rotation =  rotation;
 }
-
 void
 _ContextMenu::OnOwnerChanged(_Control* pOldOwner)
 {
index bd162bf..81ef641 100755 (executable)
@@ -701,8 +701,6 @@ _OptionMenuItem::GetSubItemIndexFromActionId(int actionId) const
 void
 _OptionMenuItem::DrawItemBackground(void)
 {
-       float topMargin = 0.0f, bottomMargin = 0.0f;
-
        SetBackgroundColor(Color(0, 0, 0, 0));
 
        if (__pBackgroundLabel == null)
@@ -731,27 +729,7 @@ _OptionMenuItem::DrawItemBackground(void)
        _ScrollPanel* pScrollPanel = static_cast<_ScrollPanel*>(GetParent());
        FloatRectangle boundsScrollPanel = pScrollPanel->GetBoundsF();
 
-       float topOverlap = pScrollPanel->GetScrollPosition() - bounds.y;
-       if (topOverlap > 0.0f)
-       {
-               topMargin = topOverlap + __bgPressedMargin;
-       }
-       else if (!__upperDividerLine)
-       {
-               topMargin = __bgPressedMargin;
-       }
-
-       float bottomOverlap = bounds.y + bounds.height - (pScrollPanel->GetScrollPosition() + boundsScrollPanel.height);
-       if (bottomOverlap > 0.0f)
-       {
-               bottomMargin = bottomOverlap + __bgPressedMargin;
-       }
-       else if (!__lowerDividerLine)
-       {
-               bottomMargin = __bgPressedMargin;
-       }
-
-       __pBackgroundLabel->SetBounds(FloatRectangle(__bgPressedMargin, topMargin, bounds.width - __bgPressedMargin * 2.0f, bounds.height - topMargin - bottomMargin));
+       __pBackgroundLabel->SetBounds(FloatRectangle(0, 0, bounds.width, bounds.height));
 
        Bitmap* BgBitmap = _BitmapImpl::GetColorReplacedBitmapN(*__pMagentaBgBitmap, Color::GetColor(COLOR_ID_MAGENTA), color);
        SysTryReturnVoidResult(NID_UI_CTRL, BgBitmap, E_OUT_OF_MEMORY, "[%s] Propagating.", GetErrorMessage(GetLastResult()));
index dda518a..cc07697 100755 (executable)
@@ -215,7 +215,7 @@ _OptionMenuPresenter::CreateItem(const String& text, int actionId, const Bitmap*
        }
 
        // calculate item size
-       float bitmapWidth = (itemType == OPTION_MENU_ITEM_DRAWING_TYPE_BITMAP) ? __itemBitmapWidth : 0.0f;
+       float bitmapWidth = 0.0f;
 
        FloatDimension textArea(0.0f, 0.0f);
        FloatDimension itemSize(0.0f, 0.0f);
@@ -227,7 +227,15 @@ _OptionMenuPresenter::CreateItem(const String& text, int actionId, const Bitmap*
        textArea.width  += 2.0f * labelLeftMargin;
        textArea.height += 2.0f * labelTopMargin;
        itemSize.height = __itemHeight + (__dividerHeight * 2.0f);
-       itemSize.width =  __leftMargin + textArea.width + __rightMargin + bitmapWidth;
+       if (itemType == OPTION_MENU_ITEM_DRAWING_TYPE_BITMAP)
+       {
+               bitmapWidth = __itemBitmapWidth;
+               itemSize.width =  textArea.width + bitmapWidth + labelLeftMargin;
+       }
+       else
+       {
+               itemSize.width =  textArea.width;
+       }
 
        itemSize.width = itemSize.width < __itemMinWidth ? __itemMinWidth : itemSize.width;
 
@@ -240,7 +248,7 @@ _OptionMenuPresenter::CreateItem(const String& text, int actionId, const Bitmap*
        pItem->SetSize(itemSize);
 
        // add text label
-       float textLabelX = __leftMargin + bitmapWidth;
+       float textLabelX = labelLeftMargin + bitmapWidth;
 
        pLabel = _Label::CreateLabelN();
        if (GetLastResult() != E_SUCCESS)
@@ -582,7 +590,7 @@ _OptionMenuPresenter::AdjustItemLayoutStyle(void)
        if (layoutClientHeight > layoutMaxHeight)
        {
                __scrollEnable = true;
-               layoutSize.height = layoutMaxHeight;
+               layoutSize.height = layoutMaxHeight + itemHeight / 2;
        }
        else
        {
index fb8d9d8..c67bed0 100644 (file)
@@ -52,6 +52,7 @@ _TabBar::_TabBar()
        GET_COLOR_CONFIG(TABBAR::ITEM_TEXT_NORMAL, __itemTextColor[ITEM_STATUS_NORMAL]);
        GET_COLOR_CONFIG(TABBAR::ITEM_TEXT_SELECTED, __itemTextColor[ITEM_STATUS_SELECTED]);
        GET_COLOR_CONFIG(TABBAR::ITEM_TEXT_PRESSED, __itemTextColor[ITEM_STATUS_HIGHLIGHTED]);
+       GET_COLOR_CONFIG(TABBAR::ITEM_TEXT_DISABLED, __itemTextColor[ITEM_STATUS_DISABLED]);
 }
 
 _TabBar::~_TabBar(void)
@@ -339,6 +340,19 @@ _TabBar::GetPropertyHighlightedItemTextColor(void) const
        return Tizen::Ui::Variant(__itemTextColor[ITEM_STATUS_HIGHLIGHTED]);
 }
 
+result
+_TabBar::SetPropertyDisabledItemTextColor(const Variant & color)
+{
+       __itemTextColor[ITEM_STATUS_DISABLED] = color.ToColor();
+
+       return E_SUCCESS;
+}
+
+Variant
+_TabBar::GetPropertyDisabledItemTextColor(void) const
+{
+       return Tizen::Ui::Variant(__itemTextColor[ITEM_STATUS_DISABLED]);
+}
 
 void
 _TabBar::SetItemTextColor(_TabBarItemStatus status, Tizen::Graphics::Color color)
@@ -381,11 +395,16 @@ _TabBar::GetItemTextColor(_TabBarItemStatus status) const
                Variant color = GetProperty("selectedItemTextColor");
                itemTextColor = color.ToColor();
        }
-       else
+       else if (status == ITEM_STATUS_HIGHLIGHTED)
        {
                Variant color = GetProperty("highlightedItemTextColor");
                itemTextColor = color.ToColor();
        }
+       else
+       {
+               Variant color = GetProperty("disabledItemTextColor");
+               itemTextColor = color.ToColor();
+       }
 
        return itemTextColor;
 }
index 3dcbfbc..d7e8bfd 100644 (file)
@@ -681,6 +681,7 @@ _TabBarPresenter::DrawItem(Tizen::Graphics::Canvas* pCanvas)
        String drawText(L"");
        FloatRectangle textRect(0.0f, 0.0f, 0.0f, 0.0f);
        TextSimple* pSimpleText = null;
+       Color textColor;
 
        _TabBarItemStatus itemStatus = ITEM_STATUS_NORMAL;
 
@@ -745,7 +746,16 @@ _TabBarPresenter::DrawItem(Tizen::Graphics::Canvas* pCanvas)
 
                __pTextObject->AppendElement(*pSimpleText);
 
-               __pTextObject->SetForegroundColor(__tabBar.GetItemTextColor(itemStatus), 0, __pTextObject->GetTextLength());
+               if (!__tabBar.IsEnabled())
+               {
+                       textColor = __tabBar.GetItemTextColor(ITEM_STATUS_DISABLED);
+               }
+               else
+               {
+                       textColor = __tabBar.GetItemTextColor(itemStatus);
+               }
+
+               __pTextObject->SetForegroundColor(textColor, 0, __pTextObject->GetTextLength());
                __pTextObject->SetBounds(textRect);
                __pTextObject->SetFont(__pFont, 0, __pTextObject->GetTextLength());
                __pTextObject->SetWrap(TEXT_OBJECT_WRAP_TYPE_NONE);
index 7ab6a2b..d03f868 100644 (file)
@@ -202,7 +202,7 @@ public:
        virtual void OnFontInfoRequested(unsigned long& style, float& size);
 
        virtual void OnVisibleStateChanged(void);
-       virtual void OnChangeLayout(_ControlOrientation orientation);
+       virtual void OnChangeLayout(_ControlRotation rotation);
        virtual void OnOwnerChanged(_Control* pOldOwner);
 
        // Focus Ui
@@ -272,6 +272,7 @@ private:
        Tizen::Graphics::Bitmap* __pBackgroundEffectBitmap;
        enum ContextMenuCoreDropPosition __dropPosition;
        enum _ControlOrientation __layout;
+       enum _ControlRotation __rotation;
 
        Tizen::Graphics::Color __backgroundColor;
        Tizen::Graphics::Color __textColor[CONTEXT_MENU_ITEM_STATUS_COUNT];
index bd24ba1..219bd3e 100644 (file)
@@ -66,6 +66,7 @@ class _OSP_EXPORT_ _TabBar
        DECLARE_PROPERTY("normalItemTextColor", GetPropertyNormalItemTextColor, SetPropertyNormalItemTextColor);
        DECLARE_PROPERTY("selectedItemTextColor", GetPropertySelectedItemTextColor, SetPropertySelectedItemTextColor);
        DECLARE_PROPERTY("highlightedItemTextColor", GetPropertyHighlightedItemTextColor, SetPropertyHighlightedItemTextColor);
+       DECLARE_PROPERTY("disabledItemTextColor", GetPropertyDisabledItemTextColor, SetPropertyDisabledItemTextColor);
        DECLARE_CLASS_END();
 
 // Properties
@@ -90,6 +91,9 @@ class _OSP_EXPORT_ _TabBar
        result SetPropertyHighlightedItemTextColor(const Variant& color);
        Variant GetPropertyHighlightedItemTextColor(void) const;
 
+       result SetPropertyDisabledItemTextColor(const Variant& color);
+       Variant GetPropertyDisabledItemTextColor(void) const;
+
 // Lifecycle
 public:
        virtual ~_TabBar(void);
index 5b127d6..5b1f6d6 100644 (file)
@@ -42,6 +42,7 @@ enum _TabBarItemStatus
        ITEM_STATUS_NORMAL = 0,
        ITEM_STATUS_SELECTED,
        ITEM_STATUS_HIGHLIGHTED,
+       ITEM_STATUS_DISABLED,
        ITEM_STATUS_MAX
 };
 /**
index 7c30bf9..581ba10 100644 (file)
@@ -67,10 +67,10 @@ START_UI_CONFIG(CONTEXTMENU);
                ADD_SHAPE_CONFIG(LIST_ITEM_HEIGHT, 112);
                ADD_SHAPE_CONFIG(LIST_MIN_WIDTH, 386);
                ADD_SHAPE_CONFIG(LIST_MAX_WIDTH, 620);
-               ADD_SHAPE_CONFIG(LIST_TOP_MARGIN, 8);
-               ADD_SHAPE_CONFIG(LIST_BOTTOM_MARGIN, 16);
-               ADD_SHAPE_CONFIG(LIST_LEFT_MARGIN, 10);
-               ADD_SHAPE_CONFIG(LIST_RIGHT_MARGIN, 10);
+               ADD_SHAPE_CONFIG(LIST_TOP_MARGIN, 14);
+               ADD_SHAPE_CONFIG(LIST_BOTTOM_MARGIN, 14);
+               ADD_SHAPE_CONFIG(LIST_LEFT_MARGIN, 14);
+               ADD_SHAPE_CONFIG(LIST_RIGHT_MARGIN, 14);
 
                ADD_SHAPE_CONFIG(LIST_ICON_WIDTH, 45);
                ADD_SHAPE_CONFIG(LIST_ICON_HEIGHT, 45);
@@ -86,10 +86,10 @@ START_UI_CONFIG(CONTEXTMENU);
                ADD_SHAPE_CONFIG(GRID_ITEM_MAX_WIDTH, 324);
                ADD_SHAPE_CONFIG(GRID_TEXT_MARGIN, 16);
                ADD_SHAPE_CONFIG(GRID_DIVIDER_HEIGHT, 74);
-               ADD_SHAPE_CONFIG(GRID_TOP_MARGIN, 8);
-               ADD_SHAPE_CONFIG(GRID_BOTTOM_MARGIN, 16);
-               ADD_SHAPE_CONFIG(GRID_LEFT_MARGIN, 10);
-               ADD_SHAPE_CONFIG(GRID_RIGHT_MARGIN, 10);
+               ADD_SHAPE_CONFIG(GRID_TOP_MARGIN, 14);
+               ADD_SHAPE_CONFIG(GRID_BOTTOM_MARGIN, 14);
+               ADD_SHAPE_CONFIG(GRID_LEFT_MARGIN, 14);
+               ADD_SHAPE_CONFIG(GRID_RIGHT_MARGIN, 14);
                ADD_SHAPE_CONFIG(GRID_ICON_WIDTH, 45);
                ADD_SHAPE_CONFIG(GRID_ICON_HEIGHT, 45);
 
@@ -104,9 +104,9 @@ START_UI_CONFIG(CONTEXTMENU);
                ADD_SHAPE_CONFIG(ANCHOR_HEIGHT, 36);
                ADD_SHAPE_CONFIG(ANCHOR_MARGIN, 14);
                ADD_SHAPE_CONFIG(ANCHOR_TOP_MARGIN, 18);
-               ADD_SHAPE_CONFIG(ANCHOR_LEFT_MARGIN, 12);
-               ADD_SHAPE_CONFIG(ANCHOR_RIGHT_MARGIN, 12);
-               ADD_SHAPE_CONFIG(ANCHOR_BOTTOM_MARGIN, 10);
+               ADD_SHAPE_CONFIG(ANCHOR_LEFT_MARGIN, 18);
+               ADD_SHAPE_CONFIG(ANCHOR_RIGHT_MARGIN, 18);
+               ADD_SHAPE_CONFIG(ANCHOR_BOTTOM_MARGIN, 18);
 
                ADD_SHAPE_CONFIG(APPEARING_ANIMATION_DISTANCE_X, 40);
                ADD_SHAPE_CONFIG(APPEARING_ANIMATION_DISTANCE_Y, 40);
index 8a5d74a..ad9d70c 100644 (file)
@@ -71,10 +71,10 @@ START_UI_CONFIG(OPTIONMENU);
                ADD_SHAPE_CONFIG(ITEM_BG_PRESSED_MARGIN, 4);
                ADD_SHAPE_CONFIG(LIST_ITEM_GAP, 16);
 
-               ADD_SHAPE_CONFIG(LIST_LEFT_MARGIN, 10);
-               ADD_SHAPE_CONFIG(LIST_RIGHT_MARGIN, 10);
+               ADD_SHAPE_CONFIG(LIST_LEFT_MARGIN, 14);
+               ADD_SHAPE_CONFIG(LIST_RIGHT_MARGIN, 14);
                ADD_SHAPE_CONFIG(LIST_TOP_MARGIN, 14);
-               ADD_SHAPE_CONFIG(LIST_BOTTOM_MARGIN, 16);
+               ADD_SHAPE_CONFIG(LIST_BOTTOM_MARGIN, 0);
 
                ADD_SHAPE_CONFIG(LIST_ICON_WIDTH, 45);
                ADD_SHAPE_CONFIG(LIST_ICON_HEIGHT, 45);