[Tizen] Add AutofillContainer class and autofill implementation
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / control / control-data-impl.h
index c2d2711..9648cd6 100755 (executable)
 
 // EXTERNAL INCLUDES
 #include <dali/public-api/object/type-registry.h>
-#include <dali/public-api/object/property-notification.h>
 #include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali/devel-api/adaptor-framework/autofill-item.h>
 #include <dali/devel-api/adaptor-framework/autofill-manager.h>
-#include <dali/devel-api/adaptor-framework/accessibility.h>
-#include <dali/public-api/adaptor-framework/accessibility.h>
 #include <string>
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/controls/text-controls/autofill-container.h>
 #include <dali/devel-api/common/owner-container.h>
 #include <dali-toolkit/devel-api/visual-factory/visual-base.h>
-#include <dali-toolkit/internal/builder/dictionary.h>
-#include <dali-toolkit/internal/builder/style.h>
 #include <dali-toolkit/internal/controls/tooltip/tooltip.h>
-#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali-toolkit/internal/builder/style.h>
+#include <dali-toolkit/internal/builder/dictionary.h>
 #include <dali-toolkit/public-api/visuals/visual-properties.h>
-#include <dali/devel-api/common/owner-container.h>
-#include <dali/integration-api/debug.h>
-#include <memory>
 
 namespace Dali
 {
@@ -342,48 +335,21 @@ public:
   bool FilterKeyEvent( const KeyEvent& event );
 
   /**
-   * @brief Adds accessibility attribute
-   * @param[in] key Attribute name to set
-   * @param[in] value Attribute value to set
-   *
-   * Attribute is added if not existed previously or updated
-   * if existed.
-   */
-  void AppendAccessibilityAttribute( const std::string& key,
-                                  const std::string value );
-
-  /**
-   * @brief Removes accessibility attribute
-   * @param[in] key Attribute name to remove
-   *
-   * Function does nothing if attribute doesn't exist.
-   */
-  void RemoveAccessibilityAttribute( const std::string& key );
-
-  /**
-   * @brief Removes all accessibility attributes
-   */
-  void ClearAccessibilityAttributes();
-
-  /**
-   * @brief Sets reading info type attributes
-   * @param[in] types info type attributes to set
-   *
-   * This function sets, which part of object will be read out
-   * by screen-reader.
+   * @copydoc DevelControl::VisualEventSignal()
    */
-  void SetAccessibilityReadingInfoType( const Dali::Accessibility::ReadingInfoTypes types );
+  DevelControl::VisualEventSignalType& VisualEventSignal();
 
   /**
-   * @brief Gets currently active reading info type attributes
+   * @brief Sets the shadow with a property map.
+   * @param[in] map The shadow property map
    */
-  Dali::Accessibility::ReadingInfoTypes GetAccessibilityReadingInfoType() const;
+  void SetShadow(const Property::Map& map);
 
   /**
-   * @copydoc DevelControl::VisualEventSignal()
+   * @brief Clear the shadow.
    */
-  DevelControl::VisualEventSignalType& VisualEventSignal();
-
+  void ClearShadow();
+  
   /**
    * @brief Sets whether the Autofill functionality is enabled.
    * @param[in] autofillEnabled Set true when Autofill should be enabled.
@@ -464,7 +430,6 @@ public:
   Control& mControlImpl;
   DevelControl::State mState;
   std::string mSubStateName;
-  Property::Map mAccessibilityAttributes;
 
   int mLeftFocusableActorId;       ///< Actor ID of Left focusable control.
   int mRightFocusableActorId;      ///< Actor ID of Right focusable control.
@@ -482,31 +447,6 @@ public:
   Toolkit::Control::KeyInputFocusSignalType mKeyInputFocusLostSignal;
   Toolkit::Control::ResourceReadySignalType mResourceReadySignal;
   DevelControl::VisualEventSignalType mVisualEventSignal;
-  Toolkit::Control::AccessibilityActivateSignalType mAccessibilityActivateSignal;
-  Toolkit::Control::AccessibilityReadingSkippedSignalType mAccessibilityReadingSkippedSignal;
-  Toolkit::Control::AccessibilityReadingCancelledSignalType mAccessibilityReadingCancelledSignal;
-  Toolkit::Control::AccessibilityReadingStoppedSignalType mAccessibilityReadingStoppedSignal;
-
-  Toolkit::Control::AccessibilityGetNameSignalType mAccessibilityGetNameSignal;
-  Toolkit::Control::AccessibilityGetDescriptionSignalType mAccessibilityGetDescriptionSignal;
-  Toolkit::Control::AccessibilityDoGestureSignalType mAccessibilityDoGestureSignal;
-
-  std::string mAccessibilityName;
-  bool mAccessibilityNameSet = false;
-
-  std::string mAccessibilityDescription;
-  bool mAccessibilityDescriptionSet = false;
-
-  std::string mAccessibilityTranslationDomain;
-  bool mAccessibilityTranslationDomainSet = false;
-
-  bool mAccessibilityHighlightable = false;
-  bool mAccessibilityHighlightableSet = false;
-
-  Dali::Accessibility::Role mAccessibilityRole = Dali::Accessibility::Role::UNKNOWN;
-
-  std::vector<std::vector<Accessibility::Address>> mAccessibilityRelations;
-  bool mAccessibilityAnimated = false;
 
   // Gesture Detection
   PinchGestureDetector mPinchGestureDetector;
@@ -545,73 +485,6 @@ public:
   static const PropertyRegistration PROPERTY_13;
   static const PropertyRegistration PROPERTY_14;
   static const PropertyRegistration PROPERTY_15;
-  static const PropertyRegistration PROPERTY_16;
-  static const PropertyRegistration PROPERTY_17;
-  static const PropertyRegistration PROPERTY_18;
-  static const PropertyRegistration PROPERTY_19;
-  static const PropertyRegistration PROPERTY_20;
-  static const PropertyRegistration PROPERTY_21;
-
-  /**
-   * The method acquires Accessible handle from Actor object
-   * @param  actor Actor object
-   * @return       handle to Accessible object
-   */
-  static Dali::Accessibility::Accessible *GetAccessibilityObject(Dali::Actor actor);
-  Dali::Accessibility::Accessible *GetAccessibilityObject();
-
-  void AccessibilityRegister();
-  void AccessibilityDeregister();
-
-  struct AccessibleImpl : public virtual Dali::Accessibility::Accessible,
-                          public virtual Dali::Accessibility::Component,
-                          public virtual Dali::Accessibility::Collection,
-                          public virtual Dali::Accessibility::Action
-  {
-    Dali::Actor self;
-    bool modal = false, root = false;
-
-    AccessibleImpl(Dali::Actor self, Dali::Accessibility::Role role, bool modal = false);
-
-    std::string GetName() override;
-    virtual std::string GetNameRaw();
-    std::string GetDescription() override;
-    virtual std::string GetDescriptionRaw();
-    Dali::Accessibility::Accessible* GetParent() override;
-    size_t GetChildCount() override;
-    Dali::Accessibility::Accessible* GetChildAtIndex( size_t index ) override;
-    size_t GetIndexInParent() override;
-    Dali::Accessibility::Role GetRole() override;
-    Dali::Accessibility::States GetStates() override;
-    Dali::Accessibility::Attributes GetAttributes() override;
-    Dali::Rect<> GetExtents( Dali::Accessibility::CoordType ctype ) override;
-    Dali::Accessibility::ComponentLayer GetLayer() override;
-    int16_t GetMdiZOrder() override;
-    bool GrabFocus() override;
-    double GetAlpha() override;
-    bool GrabHighlight() override;
-    bool ClearHighlight() override;
-    int GetHighlightIndex() override;
-
-    std::string GetActionName( size_t index ) override;
-    std::string GetLocalizedActionName( size_t index ) override;
-    std::string GetActionDescription( size_t index ) override;
-    size_t GetActionCount() override;
-    std::string GetActionKeyBinding(size_t index) override;
-    bool DoAction(size_t index) override;
-    bool DoAction(const std::string& name) override;
-    bool DoGesture(const Dali::Accessibility::GestureInfo &gestureInfo) override;
-    std::vector<Dali::Accessibility::Relation> GetRelationSet() override;
-
-    virtual Dali::Accessibility::States CalculateStates();
-  };
-
-  std::function< std::unique_ptr< Dali::Accessibility::Accessible >( Actor ) > accessibilityConstructor;
-  std::unique_ptr< Dali::Accessibility::Accessible > accessibilityObject;
-  Dali::PropertyNotification accessibilityNotificationPosition, accessibilityNotificationSize, accessibilityNotificationCulled;
-  bool accessibilityNotificationSet = false;
-  static void PositionOrSizeChangedCallback( PropertyNotification& );
-  static void CulledChangedCallback( PropertyNotification& );
 };