[OptionMenu] Fixed item width issue.
authorsr.shashank <sr.shashank@samsung.com>
Wed, 3 Jul 2013 11:22:10 +0000 (16:52 +0530)
committersr.shashank <sr.shashank@samsung.com>
Wed, 3 Jul 2013 11:25:11 +0000 (16:55 +0530)
Change-Id: Idddbd9eb64c1f532b571e4a5135d341f60a3d6be
Signed-off-by: sr.shashank <sr.shashank@samsung.com>
src/ui/controls/FUiCtrl_OptionMenuPresenter.cpp

index b170976..510255a 100755 (executable)
@@ -227,14 +227,12 @@ _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;
+
        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 + bitmapWidth;
        }
 
        itemSize.width = itemSize.width < __itemMinWidth ? __itemMinWidth : itemSize.width;
@@ -451,15 +449,12 @@ _OptionMenuPresenter::SetItem(int index, const String& text, int actionId, const
        GET_SHAPE_CONFIG(LABEL::LEFT_MARGIN, _CONTROL_ORIENTATION_PORTRAIT, labelLeftMargin);
 
        textArea.width  += 2.0f * labelLeftMargin;
+       itemSize.width =  __leftMargin + textArea.width + __rightMargin;
 
        if (pItem->GetType() == OPTION_MENU_ITEM_DRAWING_TYPE_BITMAP)
        {
                bitmapWidth = __itemBitmapWidth;
-               itemSize.width =  textArea.width + bitmapWidth + labelLeftMargin;
-       }
-       else
-       {
-               itemSize.width =  textArea.width;
+               itemSize.width =  itemSize.width + bitmapWidth;
        }
 
        itemSize.width = itemSize.width < __itemMinWidth ? __itemMinWidth : itemSize.width;
@@ -470,6 +465,8 @@ _OptionMenuPresenter::SetItem(int index, const String& text, int actionId, const
                itemSize.width = __itemMaxWidth;
        }
 
+       pItem->SetSize(itemSize);
+
        __itemWidth = __itemWidth < itemSize.width ? itemSize.width : __itemWidth;
 
        return r;