X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Ftext-controls%2Ftext-selection-popup-impl.h;h=419720ff796748c867aa5593743b2b145a506456;hb=cd2db445fc95fed65cb9d966e672cb6976a10d0d;hp=8e0141a31e3559aa019eb0b4aef073a4f2d935dd;hpb=8269fc656ce5c08314e340932c2af762e7234628;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h b/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h index 8e0141a..419720f 100644 --- a/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h +++ b/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h @@ -2,7 +2,7 @@ #define __DALI_TOOLKIT_INTERNAL_TEXT_SELECTION_POPUP_H__ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,7 +26,6 @@ #include // EXTERNAL INCLUDES -#include #include namespace Dali @@ -38,9 +37,6 @@ namespace Toolkit namespace Internal { -namespace -{ - enum PopupCustomisations { POPUP_MAXIMUM_SIZE, @@ -49,8 +45,6 @@ enum PopupCustomisations OPTION_DIVIDER_SIZE }; -} // namespace - class TextSelectionPopup : public Control { public: @@ -97,12 +91,10 @@ public: /** * @brief New constructor with provided buttons to enable. - * @param[in] buttonsToEnable bit mask of buttons to enable * @param[in] callbackInterface The text popup callback interface which receives the button click callbacks. * @return A handle to the TextSelectionPopup control. */ - static Toolkit::TextSelectionPopup New( Toolkit::TextSelectionPopup::Buttons buttonsToEnable, - TextSelectionPopupCallbackInterface* callbackInterface ); + static Toolkit::TextSelectionPopup New( TextSelectionPopupCallbackInterface* callbackInterface ); // Properties @@ -124,6 +116,11 @@ public: static Property::Value GetProperty( BaseObject* object, Property::Index index ); /** + * @copydoc Toolkit::EnableButtons + */ + void EnableButtons( Toolkit::TextSelectionPopup::Buttons buttonsToEnable ); + + /** * @copydoc Toolkit::TextSelectionPopup::RaiseAbove() */ void RaiseAbove( Layer target ); @@ -133,6 +130,11 @@ public: */ void ShowPopup(); + /** + * @copydoc Toolkiut::TextSelectionPopup::HidePopup() + */ + void HidePopup(); + private: // From Control /** @@ -140,13 +142,10 @@ private: // From Control */ virtual void OnInitialize(); - /** - * @copydoc Control::OnStageConnection() - */ - virtual void OnStageConnection( int depth ); - private: // Implementation + void HideAnimationFinished( Animation& animation ); + /** * @brief When the cut button is pressed. * @param[in] button the button pressed @@ -242,8 +241,6 @@ private: // Implementation void AddPopupOptionsToToolbar( bool showIcons, bool showCaptions ); - void CreatePopup(); - /** * Construct a new TextField. */ @@ -275,6 +272,7 @@ private: // Data Image mSelectIconImage; Image mSelectAllIconImage; + Size mPopupMaxSize; // Maximum size of the Popup Size mOptionMaxSize; // Maximum size of an Option button Size mOptionMinSize; // Minimum size of an Option button Size mOptionDividerSize; // Size of divider line @@ -296,9 +294,13 @@ private: // Data std::size_t mCopyOptionPriority; // Position of Copy button std::size_t mPasteOptionPriority; // Position of Paste button std::size_t mClipboardOptionPriority; // Position of Clipboard button + float mFadeInDuration; // Duration of the animation to fade in the Popup + float mFadeOutDuration; // Duration of the animation to fade out the Popup bool mShowIcons:1; // Flag to show icons bool mShowCaptions:1; // Flag to show text captions + bool mPopupShowing:1; // Flag to indicate Popup showing + bool mButtonsChanged:1; // Flag to indicate the Popup Buttons have changed };