From 12752c1994ba2e28c37160ae0c83c18ae25f2378 Mon Sep 17 00:00:00 2001 From: Agnelo Vaz Date: Tue, 17 Jun 2014 15:10:11 +0100 Subject: [PATCH] TextInput Popup border colour styling and missing offset property registration. [problem] Scripting can not be used to change the border colour of the popup [solution] Add Property for border colour Change-Id: I99f45fee20c1ba26c75155cae53e924a09fd802f Signed-off-by: Adeel Kazmi --- .../controls/text-input/text-input-impl.cpp | 91 ++++++++++++++++++---- .../controls/text-input/text-input-popup-impl.cpp | 77 ++++++++++++++++-- .../controls/text-input/text-input-popup-impl.h | 72 ++++++++++++++++- base/dali-toolkit/styles/tizen-dark-theme.json | 7 +- .../public-api/controls/text-input/text-input.h | 25 +++--- 5 files changed, 236 insertions(+), 36 deletions(-) diff --git a/base/dali-toolkit/internal/controls/text-input/text-input-impl.cpp b/base/dali-toolkit/internal/controls/text-input/text-input-impl.cpp index fe54de2..fe7964c 100644 --- a/base/dali-toolkit/internal/controls/text-input/text-input-impl.cpp +++ b/base/dali-toolkit/internal/controls/text-input/text-input-impl.cpp @@ -200,15 +200,19 @@ namespace Toolkit const Property::Index TextInput::HIGHLIGHT_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX; const Property::Index TextInput::CUT_AND_PASTE_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+1; const Property::Index TextInput::CUT_AND_PASTE_PRESSED_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+2; - -const Property::Index TextInput::CUT_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+3; -const Property::Index TextInput::COPY_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+4; -const Property::Index TextInput::PASTE_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+5; -const Property::Index TextInput::SELECT_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+6; -const Property::Index TextInput::SELECT_ALL_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+7; -const Property::Index TextInput::CLIPBOARD_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+8; - -const Property::Index TextInput::POP_UP_OFFSET_FROM_TEXT_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+9; +const Property::Index TextInput::CUT_AND_PASTE_BORDER_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+3; +const Property::Index TextInput::CUT_AND_PASTE_ICON_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+4; +const Property::Index TextInput::CUT_AND_PASTE_ICON_PRESSED_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+5; +const Property::Index TextInput::CUT_AND_PASTE_TEXT_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+6; +const Property::Index TextInput::CUT_AND_PASTE_TEXT_PRESSED_COLOR_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+7; +const Property::Index TextInput::CUT_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+8; +const Property::Index TextInput::COPY_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+9; +const Property::Index TextInput::PASTE_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+10; +const Property::Index TextInput::SELECT_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+11; +const Property::Index TextInput::SELECT_ALL_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+12; +const Property::Index TextInput::CLIPBOARD_BUTTON_POSITION_PRIORITY_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+13; + +const Property::Index TextInput::POP_UP_OFFSET_FROM_TEXT_PROPERTY = Internal::TextInput::TEXTINPUT_PROPERTY_START_INDEX+14; namespace Internal { @@ -235,13 +239,18 @@ SignalConnectorType signalConnector6( typeRegistration, Toolkit::TextInput::SIGN PropertyRegistration property1( typeRegistration, "highlight-color", Toolkit::TextInput::HIGHLIGHT_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); PropertyRegistration property2( typeRegistration, "cut-and-paste-bg-color", Toolkit::TextInput::CUT_AND_PASTE_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); PropertyRegistration property3( typeRegistration, "cut-and-paste-pressed-color", Toolkit::TextInput::CUT_AND_PASTE_PRESSED_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); -PropertyRegistration property4( typeRegistration, "cut-button-position-priority", Toolkit::TextInput::CUT_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); -PropertyRegistration property5( typeRegistration, "copy-button-position-priority", Toolkit::TextInput::COPY_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); -PropertyRegistration property6( typeRegistration, "paste-button-position-priority", Toolkit::TextInput::PASTE_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); -PropertyRegistration property7( typeRegistration, "select-button-position-priority", Toolkit::TextInput::SELECT_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); -PropertyRegistration property8( typeRegistration, "select-all-button-position-priority", Toolkit::TextInput::SELECT_ALL_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); -PropertyRegistration property9( typeRegistration, "clipboard-button-position-priority", Toolkit::TextInput::CLIPBOARD_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); - +PropertyRegistration property4( typeRegistration, "cut-and-paste-icon-color", Toolkit::TextInput::CUT_AND_PASTE_ICON_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property5( typeRegistration, "cut-and-paste-icon-pressed-color", Toolkit::TextInput::CUT_AND_PASTE_ICON_PRESSED_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property6( typeRegistration, "cut-and-paste-text-color", Toolkit::TextInput::CUT_AND_PASTE_TEXT_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property7( typeRegistration, "cut-and-paste-text-pressed-color", Toolkit::TextInput::CUT_AND_PASTE_TEXT_PRESSED_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property8( typeRegistration, "cut-and-paste-border-color", Toolkit::TextInput::CUT_AND_PASTE_BORDER_COLOR_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property9( typeRegistration, "cut-button-position-priority", Toolkit::TextInput::CUT_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property10( typeRegistration, "copy-button-position-priority", Toolkit::TextInput::COPY_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property11( typeRegistration, "paste-button-position-priority", Toolkit::TextInput::PASTE_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property12( typeRegistration, "select-button-position-priority", Toolkit::TextInput::SELECT_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property13( typeRegistration, "select-all-button-position-priority", Toolkit::TextInput::SELECT_ALL_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property14( typeRegistration, "clipboard-button-position-priority", Toolkit::TextInput::CLIPBOARD_BUTTON_POSITION_PRIORITY_PROPERTY, Property::UNSIGNED_INTEGER, &TextInput::SetProperty, &TextInput::GetProperty ); +PropertyRegistration property15( typeRegistration, "popup-offset-from-text", Toolkit::TextInput::POP_UP_OFFSET_FROM_TEXT_PROPERTY, Property::VECTOR4, &TextInput::SetProperty, &TextInput::GetProperty ); // [TextInput::HighlightInfo] ///////////////////////////////////////////////// @@ -5178,6 +5187,31 @@ void TextInput::SetProperty( BaseObject* object, Property::Index propertyIndex, textInputImpl.mPopUpPanel.SetCutPastePopUpPressedColor( value.Get< Vector4 >() ); break; } + case Toolkit::TextInput::CUT_AND_PASTE_BORDER_COLOR_PROPERTY: + { + textInputImpl.mPopUpPanel.SetCutPastePopUpBorderColor( value.Get< Vector4 >() ); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_ICON_COLOR_PROPERTY: + { + textInputImpl.mPopUpPanel.SetCutPastePopUpIconColor( value.Get< Vector4 >() ); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_ICON_PRESSED_COLOR_PROPERTY: + { + textInputImpl.mPopUpPanel.SetCutPastePopUpIconPressedColor( value.Get< Vector4 >() ); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_TEXT_COLOR_PROPERTY: + { + textInputImpl.mPopUpPanel.SetCutPastePopUpTextColor( value.Get< Vector4 >() ); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_TEXT_PRESSED_COLOR_PROPERTY: + { + textInputImpl.mPopUpPanel.SetCutPastePopUpTextPressedColor( value.Get< Vector4 >() ); + break; + } case Toolkit::TextInput::CUT_BUTTON_POSITION_PRIORITY_PROPERTY: { textInputImpl.mPopUpPanel.SetButtonPriorityPosition( TextInputPopup::ButtonsCut, value.Get() ); @@ -5244,6 +5278,31 @@ Property::Value TextInput::GetProperty( BaseObject* object, Property::Index prop value = textInputImpl.mPopUpPanel.GetCutPastePopUpPressedColor(); break; } + case Toolkit::TextInput::CUT_AND_PASTE_BORDER_COLOR_PROPERTY : + { + value = textInputImpl.mPopUpPanel.GetCutPastePopUpBorderColor(); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_ICON_COLOR_PROPERTY: + { + value = textInputImpl.mPopUpPanel.GetCutPastePopUpIconColor(); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_ICON_PRESSED_COLOR_PROPERTY: + { + value = textInputImpl.mPopUpPanel.GetCutPastePopUpIconPressedColor(); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_TEXT_COLOR_PROPERTY: + { + value = textInputImpl.mPopUpPanel.GetCutPastePopUpTextColor(); + break; + } + case Toolkit::TextInput::CUT_AND_PASTE_TEXT_PRESSED_COLOR_PROPERTY: + { + value = textInputImpl.mPopUpPanel.GetCutPastePopUpTextPressedColor(); + break; + } case Toolkit::TextInput::CUT_BUTTON_POSITION_PRIORITY_PROPERTY: { value = textInputImpl.mPopUpPanel.GetButtonPriorityPosition( TextInputPopup::ButtonsCut ); diff --git a/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.cpp b/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.cpp index bd7132e..79f49d3 100644 --- a/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.cpp +++ b/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.cpp @@ -34,7 +34,11 @@ namespace { const Vector4 DEFAULT_POPUP_BACKGROUND( Vector4( .20f, 0.29f, 0.44f, 1.0f ) ); const Vector4 DEFAULT_POPUP_BUTTON_PRESSED( Vector4( 0.07f, 0.10f, 0.17f, 1.0f ) ); const Vector4 DEFAULT_BORDER_COLOR( Vector4( 0.36f, 0.45f, 0.59f, 1.0f ) ); -const Vector3 POPUP_BORDER( Vector3(1.0f, 1.0f, 0.0f) ); +const Vector4 DEFAULT_POPUP_ICON( Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); +const Vector4 DEFAULT_POPUP_ICON_PRESSED( Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); +const Vector4 DEFAULT_POPUP_TEXT( Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); +const Vector4 DEFAULT_POPUP_TEXT_PRESSED( Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); +const Vector3 POPUP_BORDER( Vector3( 1.0f, 1.0f, 0.0f ) ); /* Functionality in place to have the end buttons using different images to inner button. * Supply a centre image and then a left and right image, the centre image can have straight ends while @@ -44,6 +48,7 @@ const Vector3 POPUP_BORDER( Vector3(1.0f, 1.0f, 0.0f) ); // Popup: Tails const char* DEFAULT_POPUP_TAIL_BOTTOM( DALI_IMAGE_DIR "popup_bubble_tail_bottom.png" ); const char* DEFAULT_POPUP_TAIL_BOTTOM_OUTLINE( DALI_IMAGE_DIR "popup_bubble_tail_bottom_line.png" ); +const float TAIL_Y_POSITION( -1.5f ); // Popup: Vertical Constraint // TODO: Remove - this should come from application - it is not possible to get the @@ -237,6 +242,10 @@ TextInputPopup::TextInputPopup() mCutPasteButtonsColor( DEFAULT_POPUP_BACKGROUND ), mCutPasteButtonsPressedColor( DEFAULT_POPUP_BUTTON_PRESSED ), mBorderColor( DEFAULT_BORDER_COLOR ), + mCutPasteIconsColor( DEFAULT_POPUP_ICON ), + mCutPasteIconsPressedColor( DEFAULT_POPUP_ICON_PRESSED ), + mCutPasteTextsColor( DEFAULT_POPUP_TEXT ), + mCutPasteTextsPressedColor( DEFAULT_POPUP_TEXT_PRESSED ), mSelectOptionPriority(1), mSelectAllOptionPriority(2), mCutOptionPriority(3), @@ -379,7 +388,7 @@ Toolkit::TextView TextInputPopup::CreateOptionText( const MarkupProcessor::Style return label; } -ImageActor TextInputPopup::CreateOptionIcon( Image iconImage ) +ImageActor TextInputPopup::CreateOptionIcon( Image iconImage, const Vector4& color ) { ImageActor icon = ImageActor::New( iconImage ); @@ -387,6 +396,7 @@ ImageActor TextInputPopup::CreateOptionIcon( Image iconImage ) icon.SetParentOrigin( ParentOrigin::TOP_CENTER ); icon.SetAnchorPoint( AnchorPoint::TOP_CENTER ); icon.SetPosition( 0.0f, ICON_POSITION_OFFSET ); + icon.SetColor( color ); return icon; } @@ -432,6 +442,7 @@ void TextInputPopup::CreateDivider() divider.SetParentOrigin( ParentOrigin::TOP_LEFT ); divider.SetAnchorPoint( AnchorPoint::TOP_LEFT ); divider.SetPosition( Vector3( mContentSize.width, POPUP_TEXT_OFFSET.y, 0.0f ) ); + divider.SetColor( mBorderColor ); // Keep track of all the dividers. As their height's need to be updated to the max. of all // buttons currently added. mDividerContainer.push_back(divider); @@ -568,6 +579,7 @@ void TextInputPopup::AddOption(const std::string& name, const std::string& capti // 1. Add text. TextStyle style; style.SetFontPointSize( PointSize( DEFAULT_UI_FONT_SIZE ) ); + style.SetTextColor( mCutPasteTextsColor ); MarkupProcessor::StyledTextArray styledCaption; styledCaption.push_back( MarkupProcessor::StyledText( Text( caption ), style ) ); Toolkit::TextView label = CreateOptionText( styledCaption ); @@ -588,7 +600,7 @@ void TextInputPopup::AddOption(const std::string& name, const std::string& capti button.SetPosition( Vector3( mContentSize.width, POPUP_BORDER.y, 0.0f ) ); // 2. Add icon - ImageActor icon = CreateOptionIcon( iconImage ); + ImageActor icon = CreateOptionIcon( iconImage, mCutPasteIconsColor ); iconTextContainer.Add( icon ); @@ -598,9 +610,12 @@ void TextInputPopup::AddOption(const std::string& name, const std::string& capti Actor iconPressedTextContainer = Actor::New(); iconPressedTextContainer.SetDrawMode( DrawMode::OVERLAY ); + style.SetTextColor( mCutPasteTextsPressedColor ); + styledCaption.clear(); + styledCaption.push_back( MarkupProcessor::StyledText( Text( caption ), style ) ); Toolkit::TextView pressedLabel = CreateOptionText( styledCaption ); pressedLabel.SetSize( Min( buttonSize, TEXT_LABEL_MAX_SIZE ) ); - ImageActor pressedIcon = CreateOptionIcon( iconImage ); + ImageActor pressedIcon = CreateOptionIcon( iconImage, mCutPasteIconsPressedColor ); iconPressedTextContainer.Add( pressedImageBg ); iconPressedTextContainer.Add( pressedLabel ); @@ -664,7 +679,7 @@ void TextInputPopup::Show(bool animate) { mRootActor.SetSensitive( true ); - mTail.SetPosition(Vector3( mPopupTailXPosition, 0.0f, 0.0f)); + mTail.SetPosition(Vector3( mPopupTailXPosition, TAIL_Y_POSITION, 0.0f)); if(mAnimation) { @@ -729,6 +744,56 @@ const Vector4& TextInputPopup::GetCutPastePopUpPressedColor() const return mCutPasteButtonsPressedColor; } +void TextInputPopup::SetCutPastePopUpBorderColor( const Vector4& color ) +{ + mBorderColor = color; +} + +const Vector4& TextInputPopup::GetCutPastePopUpBorderColor() const +{ + return mBorderColor; +} + +void TextInputPopup::SetCutPastePopUpIconColor( const Vector4& color ) +{ + mCutPasteIconsColor = color; +} + +const Vector4& TextInputPopup::GetCutPastePopUpIconColor() const +{ + return mCutPasteIconsColor; +} + +void TextInputPopup::SetCutPastePopUpIconPressedColor( const Vector4& color ) +{ + mCutPasteIconsPressedColor = color; +} + +const Vector4& TextInputPopup::GetCutPastePopUpIconPressedColor() +{ + return mCutPasteIconsPressedColor; +} + +void TextInputPopup::SetCutPastePopUpTextColor( const Vector4& color ) +{ + mCutPasteTextsColor = color; +} + +const Vector4& TextInputPopup::GetCutPastePopUpTextColor() +{ + return mCutPasteTextsColor; +} + +void TextInputPopup::SetCutPastePopUpTextPressedColor( const Vector4& color ) +{ + mCutPasteTextsPressedColor = color; +} + +const Vector4& TextInputPopup::GetCutPastePopUpTextPressedColor() +{ + return mCutPasteTextsPressedColor; +} + void TextInputPopup::TogglePopUpButtonOnOff( TextInputPopup::Buttons requiredButton, bool enable ) { bool match ( false ); @@ -862,6 +927,8 @@ void TextInputPopup::AddPopupOptions() mRootActor.Add( mTail ); Self().Add(mLayer); + + mLayer.Lower(); } void TextInputPopup::SetPopupBoundary( const Rect& boundingRectangle ) diff --git a/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.h b/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.h index 3a5a415..4dd701b 100644 --- a/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.h +++ b/base/dali-toolkit/internal/controls/text-input/text-input-popup-impl.h @@ -137,7 +137,7 @@ public: * @param[in] iconImage the image to be used * @return the newly created Image actor to be used as the icon */ - ImageActor CreateOptionIcon( Image iconImage ); + ImageActor CreateOptionIcon( Image iconImage, const Vector4& color ); /** * Creates and sets up the popup background @@ -229,6 +229,18 @@ public: const Vector4& GetCutPastePopUpPressedColor() const; /** + * Set the border color of the popup + * @param[in] color required color + */ + void SetCutPastePopUpBorderColor( const Vector4& color ); + + /** + * Get the border color + * @return Vector4 the color of the border + */ + const Vector4& GetCutPastePopUpBorderColor() const; + + /** * Toggle if a popup button should be enabled (shown) or not * @param[in] requiredButton Button Id to enable or disable * @param[in] enable toggle to enable (true) or disable (false) @@ -243,6 +255,54 @@ public: void SetButtonPriorityPosition( TextInputPopup::Buttons button, unsigned int priority ); /** + * Set the icon color of the popup + * @param[in] color required color + */ + void SetCutPastePopUpIconColor( const Vector4& color ); + + /** + * Get the popup icon color + * @return Vector4 the color of the popup icon + */ + const Vector4& GetCutPastePopUpIconColor() const; + + /** + * Set the pressed icon color of the popup + * @param[in] color required color + */ + void SetCutPastePopUpIconPressedColor( const Vector4& color ); + + /** + * Get the popup pressed icon color + * @return Vector4 the color of the popup pressed icon + */ + const Vector4& GetCutPastePopUpIconPressedColor(); + + /** + * Set the text color of the popup + * @param[in] color required color + */ + void SetCutPastePopUpTextColor( const Vector4& color ); + + /** + * Get the popup text color + * @return Vector4 the color of the popup text + */ + const Vector4& GetCutPastePopUpTextColor(); + + /** + * Set the pressed text color of the popup + * @param[in] color required color + */ + void SetCutPastePopUpTextPressedColor( const Vector4& color ); + + /** + * Get the popup pressed text color + * @return Vector4 the color of the popup pressed text + */ + const Vector4& GetCutPastePopUpTextPressedColor(); + + /** * Get the Button Priority Position * @param[in] button Button id to get priority of * @return the button priority, 1 is highest, 0 is not shown. @@ -373,9 +433,13 @@ private: std::vector mOrderListOfButtons; // List of buttons in the order to be displayed and a flag to indicate if needed. - Vector4 mCutPasteButtonsColor; // Color of the cut and paste popup - Vector4 mCutPasteButtonsPressedColor; // Color of the cut and paste buttons when pressed. - Vector4 mBorderColor; // Color of the border around the Cut and Paste Popup + Vector4 mCutPasteButtonsColor; // Color of the cut and paste popup. + Vector4 mCutPasteButtonsPressedColor; // Color of the cut and paste buttons when pressed. + Vector4 mBorderColor; // Color of the border around the Cut and Paste Popup. + Vector4 mCutPasteIconsColor; // Color of the popup icon. + Vector4 mCutPasteIconsPressedColor; // Color of the popup icon when pressed. + Vector4 mCutPasteTextsColor; // Color of the popup text. + Vector4 mCutPasteTextsPressedColor; // Color of the popup text when pressed. Rect mBoundingRect; // Boundary that Popup must stay within. diff --git a/base/dali-toolkit/styles/tizen-dark-theme.json b/base/dali-toolkit/styles/tizen-dark-theme.json index 116a8f4..bcdc3e3 100644 --- a/base/dali-toolkit/styles/tizen-dark-theme.json +++ b/base/dali-toolkit/styles/tizen-dark-theme.json @@ -36,6 +36,11 @@ distributing this software or its derivatives. "highlight-color":"F060", "cut-and-paste-bg-color":"B061L41", "cut-and-paste-pressed-color":"B061L41P", + "cut-and-paste-border-color":"B0623L2", + "cut-and-paste-icon-color":"T126", + "cut-and-paste-icon-pressed-color":"T126P", + "cut-and-paste-text-color":"T1221", + "cut-and-paste-text-pressed-color":"T1221P", "cut-button-position-priority":4, "copy-button-position-priority":3, "paste-button-position-priority":5, @@ -44,4 +49,4 @@ distributing this software or its derivatives. "clipboard-button-position-priority":6 } } -} \ No newline at end of file +} diff --git a/capi/dali-toolkit/public-api/controls/text-input/text-input.h b/capi/dali-toolkit/public-api/controls/text-input/text-input.h index 3768c55..57c51ba 100644 --- a/capi/dali-toolkit/public-api/controls/text-input/text-input.h +++ b/capi/dali-toolkit/public-api/controls/text-input/text-input.h @@ -49,18 +49,23 @@ public: /// @name Properties /** @{ */ - static const Property::Index HIGHLIGHT_COLOR_PROPERTY; // Property, name "highlight-color", type VECTOR4 - static const Property::Index CUT_AND_PASTE_COLOR_PROPERTY; // Property, name "cut-and-paste-bg-color", type VECTOR4 - static const Property::Index CUT_AND_PASTE_PRESSED_COLOR_PROPERTY; // Property, name "cut-and-paste-pressed-color", type VECTOR4 - - static const Property::Index CUT_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "cut-button-position-priority", type unsigned int - static const Property::Index COPY_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "copy-button-position-priority", type unsigned int - static const Property::Index PASTE_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "paste-button-position-priority", type unsigned int - static const Property::Index SELECT_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "select-button-position-priority", type unsigned int + static const Property::Index HIGHLIGHT_COLOR_PROPERTY; // Property, name "highlight-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_COLOR_PROPERTY; // Property, name "cut-and-paste-bg-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_PRESSED_COLOR_PROPERTY; // Property, name "cut-and-paste-pressed-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_BORDER_COLOR_PROPERTY; // Property, name "cut-and-paste-border-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_ICON_COLOR_PROPERTY; // Property, name "cut-and-paste-icon-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_ICON_PRESSED_COLOR_PROPERTY; // Property, name "cut-and-paste-icon-pressed-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_TEXT_COLOR_PROPERTY; // Property, name "cut-and-paste-text-color", type VECTOR4 + static const Property::Index CUT_AND_PASTE_TEXT_PRESSED_COLOR_PROPERTY; // Property, name "cut-and-paste-text-pressed-color", type VECTOR4 + + static const Property::Index CUT_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "cut-button-position-priority", type unsigned int + static const Property::Index COPY_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "copy-button-position-priority", type unsigned int + static const Property::Index PASTE_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "paste-button-position-priority", type unsigned int + static const Property::Index SELECT_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "select-button-position-priority", type unsigned int static const Property::Index SELECT_ALL_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "select-all-button-position-priority", type unsigned int - static const Property::Index CLIPBOARD_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "clipboard-button-position-priority", type unsigned int + static const Property::Index CLIPBOARD_BUTTON_POSITION_PRIORITY_PROPERTY; // Property, name "clipboard-button-position-priority", type unsigned int - static const Property::Index POP_UP_OFFSET_FROM_TEXT_PROPERTY; // Property, name "popup-offset-from-text", type VECTOR4 + static const Property::Index POP_UP_OFFSET_FROM_TEXT_PROPERTY; // Property, name "popup-offset-from-text", type VECTOR4 /** @} */ -- 2.7.4