, __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);
result r = E_SUCCESS;
__layout = _ControlManager::GetInstance()->GetOrientation();
+ __rotation = _ControlManager::GetInstance()->GetScreenRotation();
__isAttachedToMainTree = true;
_Control* pOwner = GetOwner();
if (pOwner == null)
}
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)
{
void
_OptionMenuItem::DrawItemBackground(void)
{
- float topMargin = 0.0f, bottomMargin = 0.0f;
-
SetBackgroundColor(Color(0, 0, 0, 0));
if (__pBackgroundLabel == null)
_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()));
}
// 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);
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;
pItem->SetSize(itemSize);
// add text label
- float textLabelX = __leftMargin + bitmapWidth;
+ float textLabelX = labelLeftMargin + bitmapWidth;
pLabel = _Label::CreateLabelN();
if (GetLastResult() != E_SUCCESS)
if (layoutClientHeight > layoutMaxHeight)
{
__scrollEnable = true;
- layoutSize.height = layoutMaxHeight;
+ layoutSize.height = layoutMaxHeight + itemHeight / 2;
}
else
{
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)
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)
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;
}
String drawText(L"");
FloatRectangle textRect(0.0f, 0.0f, 0.0f, 0.0f);
TextSimple* pSimpleText = null;
+ Color textColor;
_TabBarItemStatus itemStatus = ITEM_STATUS_NORMAL;
__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);
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
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];
DECLARE_PROPERTY("normalItemTextColor", GetPropertyNormalItemTextColor, SetPropertyNormalItemTextColor);
DECLARE_PROPERTY("selectedItemTextColor", GetPropertySelectedItemTextColor, SetPropertySelectedItemTextColor);
DECLARE_PROPERTY("highlightedItemTextColor", GetPropertyHighlightedItemTextColor, SetPropertyHighlightedItemTextColor);
+ DECLARE_PROPERTY("disabledItemTextColor", GetPropertyDisabledItemTextColor, SetPropertyDisabledItemTextColor);
DECLARE_CLASS_END();
// Properties
result SetPropertyHighlightedItemTextColor(const Variant& color);
Variant GetPropertyHighlightedItemTextColor(void) const;
+ result SetPropertyDisabledItemTextColor(const Variant& color);
+ Variant GetPropertyDisabledItemTextColor(void) const;
+
// Lifecycle
public:
virtual ~_TabBar(void);
ITEM_STATUS_NORMAL = 0,
ITEM_STATUS_SELECTED,
ITEM_STATUS_HIGHLIGHTED,
+ ITEM_STATUS_DISABLED,
ITEM_STATUS_MAX
};
/**
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);
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);
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);
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);