Add param for applying fit to content.
authorKeuckdo Bang <keuckdo.bang@samsung.net>
Mon, 20 May 2013 09:55:18 +0000 (18:55 +0900)
committerKeuckdo Bang <keuckdo.bang@samsung.net>
Mon, 20 May 2013 09:55:18 +0000 (18:55 +0900)
Change-Id: Iaaf3651e4055b794405a6e7f6ef225650116bc06

18 files changed:
src/ui/FUi_Control.cpp
src/ui/FUi_ControlImpl.cpp
src/ui/controls/FUiCtrl_Button.cpp
src/ui/controls/FUiCtrl_ButtonImpl.cpp
src/ui/controls/FUiCtrl_Edit.cpp
src/ui/controls/FUiCtrl_Label.cpp
src/ui/controls/FUiCtrl_LabelImpl.cpp
src/ui/controls/FUiCtrl_TextBoxImpl.cpp
src/ui/inc/FUiCtrl_Button.h
src/ui/inc/FUiCtrl_ButtonImpl.h
src/ui/inc/FUiCtrl_Edit.h
src/ui/inc/FUiCtrl_Label.h
src/ui/inc/FUiCtrl_LabelImpl.h
src/ui/inc/FUiCtrl_TextBoxImpl.h
src/ui/inc/FUi_Control.h
src/ui/inc/FUi_ControlImpl.h
src/ui/inc/FUi_LayoutILayoutItemHandler.h
src/ui/layout/FUi_LayoutLayoutItem.cpp

index 99ca14d..44b5715 100644 (file)
@@ -420,9 +420,9 @@ public:
                return clientBounds;
        }
 
-       FloatDimension GetItemContentSize(void) const
+       FloatDimension GetItemContentSize(bool horizontalMode, bool verticalMode) const
        {
-               return __pControl->GetControlDelegate().GetContentSizeF();
+               return __pControl->GetControlDelegate().GetContentSizeF(horizontalMode, verticalMode);
        }
 
        FloatDimension GetItemMinimumSize(void) const
@@ -690,7 +690,7 @@ _Control::GetContentSize(void) const
 }
 
 FloatDimension
-_Control::GetContentSizeF(void) const
+_Control::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
        ClearLastResult();
        return FloatDimension(0.0f, 0.0f);
@@ -925,6 +925,7 @@ _Control::OnTouchMoveHandled(const _Control& control)
 void
 _Control::OnFontChanged(Tizen::Graphics::Font* pFont)
 {
+       SetUpdateLayoutState(true);
 }
 
 void
index c5c8c62..7368acf 100644 (file)
@@ -2216,9 +2216,9 @@ _ControlImpl::GetContentSize(void) const
 }
 
 FloatDimension
-_ControlImpl::GetContentSizeF(void) const
+_ControlImpl::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
-       return GetCore().GetContentSizeF();
+       return GetCore().GetContentSizeF(horizontalMode, verticalMode);
 }
 
 HitTestResult
index 2ba7afb..7117f57 100644 (file)
@@ -329,6 +329,8 @@ _Button::OnFontChanged(Font* pFont)
 {
        __pButtonPresenter->OnFontChanged(pFont);
 
+       _Control::OnFontChanged(pFont);
+
        return;
 }
 
@@ -1328,20 +1330,14 @@ _Button::GetBottomMarginF(void) const
        return __bottomMargin;
 }
 
-Tizen::Graphics::Dimension
-_Button::GetContentSize(void) const
-{
-       return _CoordinateSystemUtils::ConvertToInteger(GetContentSizeInternalF());
-}
-
 Tizen::Graphics::FloatDimension
-_Button::GetContentSizeF(void) const
+_Button::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
-       return GetContentSizeInternalF();
+       return GetContentSizeInternalF(horizontalMode, verticalMode);
 }
 
 Tizen::Graphics::FloatDimension
-_Button::GetContentSizeInternalF(void) const
+_Button::GetContentSizeInternalF(bool horizontalMode, bool verticalMode) const
 {
        for (int i = 0; i < NUMBER_OF_BUTTON_STATUS; i++)
        {
index cb89489..bad3b60 100644 (file)
@@ -567,16 +567,10 @@ _ButtonImpl::OnTouchCanceled(const _ControlImpl& source, const _TouchInfo& touch
        return false;
 }
 
-Tizen::Graphics::Dimension
-_ButtonImpl::GetContentSize(void) const
-{
-       return GetCore().GetContentSize();
-}
-
 Tizen::Graphics::FloatDimension
-_ButtonImpl::GetContentSizeF(void) const
+_ButtonImpl::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
-       return GetCore().GetContentSizeF();
+       return GetCore().GetContentSizeF(horizontalMode, verticalMode);
 }
 
 _ButtonStatus
index f4ad7f4..766cd0a 100644 (file)
@@ -561,7 +561,7 @@ _Edit::GetPresenter(void) const
 }
 
 FloatDimension
-_Edit::GetContentSizeInternalF(void) const
+_Edit::GetContentSizeInternalF(bool horizontalMode, bool verticalMode) const
 {
        if (!GetTextLength())
        {
@@ -2028,6 +2028,8 @@ _Edit::OnFontChanged(Font* pFont)
 {
        _pEditPresenter->OnFontChanged(pFont);
 
+       _Control::OnFontChanged(pFont);
+
        return;
 }
 
index 664267b..dba7e38 100644 (file)
@@ -236,6 +236,8 @@ _Label::OnFontChanged(Font* pFont)
 {
        __pLabelPresenter->OnFontChanged(pFont);
 
+       _Control::OnFontChanged(pFont);
+
        return;
 }
 
@@ -533,20 +535,14 @@ _Label::GetBottomMarginF(void) const
        return __bottomMargin;
 }
 
-Dimension
-_Label::GetContentSize(void) const
-{
-       return _CoordinateSystemUtils::ConvertToInteger(GetContentSizeInternalF());
-}
-
 FloatDimension
-_Label::GetContentSizeF(void) const
+_Label::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
-       return GetContentSizeInternalF();
+       return GetContentSizeInternalF(horizontalMode, verticalMode);
 }
 
 FloatDimension
-_Label::GetContentSizeInternalF(void) const
+_Label::GetContentSizeInternalF(bool horizontalMode, bool verticalMode) const
 {
        if (__text.IsEmpty() && __pBackgroundBitmap == null)
        {
index 930b90f..cec36fb 100644 (file)
@@ -192,16 +192,10 @@ _LabelImpl::OnBoundsChanged(const FloatRectangle& oldRect, const FloatRectangle&
        return E_SUCCESS;
 }
 
-Tizen::Graphics::Dimension
-_LabelImpl::GetContentSize(void) const
-{
-       return GetCore().GetContentSize();
-}
-
 Tizen::Graphics::FloatDimension
-_LabelImpl::GetContentSizeF(void) const
+_LabelImpl::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
-       return GetCore().GetContentSizeF();
+       return GetCore().GetContentSizeF(horizontalMode, verticalMode);
 }
 
 result
index e9b4d84..986a961 100644 (file)
@@ -605,9 +605,9 @@ _TextBoxImpl::OnTextBlockSelected(_Control& source, int start, int end)
 }
 
 FloatDimension
-_TextBoxImpl::GetContentSizeF(void) const
+_TextBoxImpl::GetContentSizeF(bool horizontalMode, bool verticalMode) const
 {
-       return __pEdit->GetContentSizeInternalF();
+       return __pEdit->GetContentSizeInternalF(horizontalMode, verticalMode);
 }
 
 _TextBoxImpl*
index 1e979c1..4ac1b16 100644 (file)
@@ -134,8 +134,7 @@ public:
        virtual void OnFontChanged(Tizen::Graphics::Font* pFont);
        virtual void OnFontInfoRequested(unsigned long& style, int& size);
        virtual void OnFontInfoRequested(unsigned long& style, float& size);
-       virtual Tizen::Graphics::Dimension GetContentSize(void) const;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
        virtual void OnAncestorEnableStateChanged(const _Control& control);
 
 public:
@@ -241,7 +240,7 @@ public:
        float GetRightTouchMarginF(void) const;
        float GetBottomTouchMarginF(void) const;
 
-       Tizen::Graphics::FloatDimension GetContentSizeInternalF(void) const;
+       Tizen::Graphics::FloatDimension GetContentSizeInternalF(bool horizontalMode, bool verticalMode) const;
        int GetTextExtentSize(void) const;
        float GetTextExtentSizeF(void) const;
 
index 6734a00..133ad16 100644 (file)
@@ -117,8 +117,7 @@ public:
        virtual bool OnTouchMoved(const _ControlImpl& source, const _TouchInfo& touchinfo);
        virtual bool OnTouchCanceled(const _ControlImpl& source, const _TouchInfo& touchinfo);
 
-       virtual Tizen::Graphics::Dimension GetContentSize(void) const;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
 
 public:
        static const Tizen::Graphics::Color GetColorOnError(void);
index 984c02b..2813577 100644 (file)
@@ -493,7 +493,7 @@ public:
        virtual void OnSettingChanged(Tizen::Base::String& key);
 
        _EditPresenter* GetPresenter(void) const;
-       Tizen::Graphics::FloatDimension GetContentSizeInternalF(void) const;
+       Tizen::Graphics::FloatDimension GetContentSizeInternalF(bool horizontalMode, bool verticalMode) const;
        bool IsInternalFocused(void) const;
        bool ValidatePastedText(const Tizen::Base::String& pastedText, Tizen::Base::String& replacedText);
        void SetEditTextFilter(IEditTextFilter* pFilter);
index 3e50abc..6c413cc 100644 (file)
@@ -80,8 +80,7 @@ public:
        virtual void OnBoundsChanged(void);
        virtual void OnFontChanged(Tizen::Graphics::Font* pFont);
        virtual void OnFontInfoRequested(unsigned long& style, int& size);
-       virtual Tizen::Graphics::Dimension GetContentSize(void) const;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
 
 public:
        result SetText(const Tizen::Base::String& text);
@@ -123,7 +122,7 @@ public:
        float GetRightMarginF(void) const;
        float GetBottomMarginF(void) const;
 
-       Tizen::Graphics::FloatDimension GetContentSizeInternalF(void) const;
+       Tizen::Graphics::FloatDimension GetContentSizeInternalF(bool horizontalMode, bool verticalMode) const;
 
 protected:
        result SetPresenter(const _LabelPresenter& labelPresenter);
index 5e62b77..d0b53c5 100644 (file)
@@ -87,8 +87,7 @@ public:
 
        virtual result OnBoundsChanged(const Tizen::Graphics::Rectangle& oldRect, const Tizen::Graphics::Rectangle& newRect);
        virtual result OnBoundsChanged(const Tizen::Graphics::FloatRectangle& oldRect, const Tizen::Graphics::FloatRectangle& newRect);
-       virtual Tizen::Graphics::Dimension GetContentSize(void) const;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
 
 public:
        static Tizen::Graphics::Color GetColorOnError(void);
index daba4dd..e0eb696 100644 (file)
@@ -617,7 +617,7 @@ public:
         */
        result RemoveTextBlockEventListener(Tizen::Ui::ITextBlockEventListener& listener);
 
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
 
 // Operation
 public:
index e58a8db..f29c76c 100644 (file)
@@ -74,7 +74,7 @@ public:
 
        // Queries
        virtual Tizen::Graphics::Dimension GetContentSize(void) const = 0;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const = 0;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const = 0;
        virtual Tizen::Ui::Animations::HitTestResult HitTest(const Tizen::Graphics::FloatPoint& point) = 0;
        virtual Tizen::Base::String GetDescription(void) const = 0;
 
@@ -220,7 +220,7 @@ public:
 
 // Virtual Queries: Do not use directly. Use through delegate (GetControlDelegate())
        virtual Tizen::Graphics::Dimension GetContentSize(void) const;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
        virtual Tizen::Ui::Animations::HitTestResult HitTest(const Tizen::Graphics::FloatPoint& point);
        virtual Tizen::Base::String GetDescription(void) const;
        virtual float GetVerticalScrollPosition(void) const;
index f09787a..162d938 100644 (file)
@@ -125,7 +125,7 @@ public:
 
 // Queries
        virtual Tizen::Graphics::Dimension GetContentSize(void) const;
-       virtual Tizen::Graphics::FloatDimension GetContentSizeF(void) const;
+       virtual Tizen::Graphics::FloatDimension GetContentSizeF(bool horizontalMode, bool verticalMode) const;
        virtual Tizen::Ui::Animations::HitTestResult HitTest(const Tizen::Graphics::FloatPoint& point);
        virtual Tizen::Base::String GetDescription(void) const;
 
index 9fc2841..c4cc0b5 100644 (file)
@@ -45,7 +45,7 @@ public:
        virtual result SetItemBounds(const Tizen::Graphics::FloatRectangle& rect) = 0;
        virtual Tizen::Graphics::FloatRectangle GetItemBounds(void) const = 0;
        virtual Tizen::Graphics::FloatRectangle GetItemClientBoundsFromSize(const Tizen::Graphics::FloatDimension& size) const = 0;
-       virtual Tizen::Graphics::FloatDimension GetItemContentSize(void) const = 0;
+       virtual Tizen::Graphics::FloatDimension GetItemContentSize(bool horizontalMode, bool verticalMode) const = 0;
        virtual Tizen::Graphics::FloatDimension GetItemMinimumSize(void) const = 0;
        virtual Tizen::Graphics::FloatDimension GetItemMaximumSize(void) const = 0;
        virtual result OnItemMeasure(float& width, float& height) = 0;
index de663ed..af15e83 100644 (file)
@@ -146,9 +146,11 @@ LayoutItem::Measure(float width, float height)
        float wrapContentWidth = 0.0f;
        float wrapContentHeight = 0.0f;
 
-       if (widthMode == WRAP_CONTENT || heightMode == WRAP_CONTENT)
+       bool widthWrapContent = widthMode == WRAP_CONTENT;
+       bool heightWrapContent = heightMode == WRAP_CONTENT;
+       if (widthWrapContent || heightWrapContent)
        {
-               Tizen::Graphics::FloatDimension size = __pOuterControl->GetItemContentSize();
+               Tizen::Graphics::FloatDimension size = __pOuterControl->GetItemContentSize(widthWrapContent, heightWrapContent);
                if (size.width > 0.0f || size.height > 0.0f)
                {
                        __contentSizeState = true;