Merge "Fix assetion error in FocusManager" into tizen
authorKimmo Hoikka <kimmo.hoikka@samsung.com>
Tue, 2 Sep 2014 14:08:51 +0000 (07:08 -0700)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Tue, 2 Sep 2014 14:08:51 +0000 (07:08 -0700)
29 files changed:
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/dali-toolkit-test-suite-utils.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.cpp
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-adaptor.cpp
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-application.cpp
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-clipboard-event-notifier.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-imf-manager.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-orientation.h
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-style-monitor.h
automated-tests/src/dali-toolkit/utc-Dali-Control.cpp
base/dali-toolkit/internal/builder/builder-impl.cpp
base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp
base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h
base/dali-toolkit/internal/controls/text-input/text-input-impl.cpp
base/dali-toolkit/public-api/controls/control-impl.cpp
base/dali-toolkit/public-api/controls/control-impl.h
base/dali-toolkit/public-api/controls/control.cpp
base/dali-toolkit/public-api/controls/control.h
base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp
base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h
base/dali-toolkit/public-api/controls/text-input/text-input.h
build/tizen/dali-toolkit.pc.in
build/tizen/docs/dali.doxy.in
docs/DaliLayout.xml
optional/dali-toolkit/public-api/dali-toolkit-version.cpp
packaging/dali-toolkit.spec

index 082c2dd..5590b91 100644 (file)
@@ -303,20 +303,20 @@ void DALI_TEST_EQUALS( const char* str1, const std::string &str2, const char* lo
  * @param[in] location The TEST_LOCATION macro should be used here
  */
 template<>
-inline void DALI_TEST_EQUALS<const TextArray&>( const TextArray& str1, const TextArray& str2, const char* location)
+inline void DALI_TEST_EQUALS<const Integration::TextArray&>( const Integration::TextArray& str1, const Integration::TextArray& str2, const char* location)
 {
-  if (!std::equal(str1.begin(), str1.end(), str2.begin()))
+  if (!std::equal(str1.Begin(), str1.End(), str2.Begin()))
   {
     fprintf(stderr, "%s, checking '", location);
 
-    for( unsigned int i = 0; i < str1.size(); ++i)
+    for( unsigned int i = 0; i < str1.Count(); ++i)
     {
       fprintf(stderr, "%c", str1[i]);
     }
 
     fprintf(stderr, "' == '");
 
-    for( unsigned int i = 0; i < str2.size(); ++i)
+    for( unsigned int i = 0; i < str2.Count(); ++i)
     {
       fprintf(stderr, "%c", str2[i]);
     }
index fcda1d2..1a6a0b3 100644 (file)
@@ -26,7 +26,7 @@
 #define __DALI_ACCESSIBILITY_MANAGER_H__
 #define __DALI_TIMER_H__
 #define __DALI_CLIPBOARD_H__
-#define IMFMANAGER_H
+#define __DALI_IMF_MANAGER_H__
 
 #include <dali-test-suite-utils.h>
 
index ea7e48e..c2680b2 100644 (file)
@@ -29,7 +29,8 @@ TestApplication::TestApplication( size_t surfaceWidth,
   mSurfaceWidth( surfaceWidth ),
   mSurfaceHeight( surfaceHeight ),
   mFrame( 0u ),
-  mDpi( horizontalDpi, verticalDpi )
+  mDpi( horizontalDpi, verticalDpi ),
+  mLastVSyncTime(0u)
 {
   Initialize();
 }
@@ -142,15 +143,23 @@ void TestApplication::SetSurfaceWidth( unsigned int width, unsigned height )
   mCore->SurfaceResized( mSurfaceWidth, mSurfaceHeight );
 }
 
-bool TestApplication::Render( unsigned int intervalMilliseconds  )
+void TestApplication::DoUpdate( unsigned int intervalMilliseconds )
 {
-  // Update Time values
-  mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds );
   unsigned int seconds(0u), microseconds(0u);
   mPlatformAbstraction.GetTimeMicroseconds( seconds, microseconds );
+  mLastVSyncTime = ( seconds * 1e3 ) + ( microseconds / 1e3 );
+  unsigned int nextVSyncTime = mLastVSyncTime + 16;
+
+  // Update Time values
+  mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds );
+
+  float elapsedSeconds = intervalMilliseconds / 1e3f;
+  mCore->Update( elapsedSeconds, mLastVSyncTime, nextVSyncTime, mStatus );
+}
 
-  mCore->VSync( mFrame, seconds, microseconds );
-  mCore->Update( mStatus );
+bool TestApplication::Render( unsigned int intervalMilliseconds  )
+{
+  DoUpdate( intervalMilliseconds );
   mCore->Render( mRenderStatus );
 
   mFrame++;
@@ -165,14 +174,7 @@ unsigned int TestApplication::GetUpdateStatus()
 
 bool TestApplication::UpdateOnly( unsigned int intervalMilliseconds  )
 {
-  // Update Time values
-  mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds );
-  unsigned int seconds(0u), microseconds(0u);
-  mPlatformAbstraction.GetTimeMicroseconds( seconds, microseconds );
-
-  mCore->VSync( mFrame, seconds, microseconds );
-  mCore->Update( mStatus );
-
+  DoUpdate( intervalMilliseconds );
   return mStatus.KeepUpdating();
 }
 
index 4084f2d..bcc2dd8 100644 (file)
@@ -76,6 +76,9 @@ public:
   bool RenderOnly( );
   void ResetContext();
 
+private:
+  void DoUpdate( unsigned int intervalMilliseconds );
+
 protected:
   TestPlatformAbstraction   mPlatformAbstraction;
   TestRenderController      mRenderController;
@@ -93,6 +96,7 @@ protected:
   unsigned int mFrame;
 
   Vector2 mDpi;
+  unsigned int mLastVSyncTime;
 };
 
 } // Dali
index 4f749ce..ef3eb77 100644 (file)
@@ -322,7 +322,7 @@ void TestPlatformAbstraction::SetDpi (unsigned int dpiHorizontal, unsigned int d
 /**
  * @copydoc PlatformAbstraction::GetFontFamilyForChars()
  */
-const std::string& TestPlatformAbstraction::GetFontFamilyForChars(const TextArray& charsRequested) const
+const std::string& TestPlatformAbstraction::GetFontFamilyForChars(const Integration::TextArray& charsRequested) const
 {
   mTrace.PushCall("GetFontFamilyForChars", "");
   return mGetDefaultFontFamilyResult;
@@ -331,7 +331,7 @@ const std::string& TestPlatformAbstraction::GetFontFamilyForChars(const TextArra
 /**
  * @copydoc PlatformAbstraction::AllGlyphsSupported()
  */
-bool TestPlatformAbstraction::AllGlyphsSupported(const std::string& name, const std::string& fontStyle, const TextArray& text) const
+bool TestPlatformAbstraction::AllGlyphsSupported(const std::string& name, const std::string& fontStyle, const Integration::TextArray& text) const
 {
   mTrace.PushCall("AllGlyphsSupported", "");
   return true;
index 4723d90..2d4c38c 100644 (file)
@@ -185,12 +185,12 @@ public:
   /**
    * @copydoc PlatformAbstraction::GetFontFamilyForChars()
    */
-  virtual const std::string& GetFontFamilyForChars(const TextArray& charsRequested) const;
+  virtual const std::string& GetFontFamilyForChars(const Integration::TextArray& charsRequested) const;
 
   /**
    * @copydoc PlatformAbstraction::AllGlyphsSupported()
    */
-  virtual bool AllGlyphsSupported(const std::string& name, const std::string& fontStyle, const TextArray& text) const;
+  virtual bool AllGlyphsSupported(const std::string& name, const std::string& fontStyle, const Integration::TextArray& text) const;
 
   /**
    * @copydoc PlatformAbstraction::ValidateFontFamilyName()
index ea1888d..186fadd 100644 (file)
@@ -19,7 +19,7 @@
 #define __DALI_ACCESSIBILITY_MANAGER_H__
 #define __DALI_TIMER_H__
 #define __DALI_CLIPBOARD_H__
-#define IMFMANAGER_H
+#define __DALI_IMF_MANAGER_H__
 
 #include "toolkit-adaptor.h"
 #include <map>
index 5c61ea8..9554eaf 100644 (file)
@@ -21,7 +21,7 @@
 
 #include <dali/public-api/common/dali-common.h>
 #include <dali/public-api/signals/dali-signal-v2.h>
-#include <dali/public-api/orientation.h>
+#include <dali/public-api/adaptor-framework/orientation.h>
 
 namespace Dali
 {
index bd8cb62..2ac731f 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef _DALI_ADAPTOR_IMF_MANAGER_H_
-#define _DALI_ADAPTOR_IMF_MANAGER_H_
+#ifndef __DALI_TOOLKIT_TOOLKIT_IMF_MANAGER_H__
+#define __DALI_TOOLKIT_TOOLKIT_IMF_MANAGER_H__
 
 /*
  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
@@ -19,7 +19,7 @@
  */
 
 // EXTERNAL INCLUDES
-#define IMFMANAGER_H
+#define __DALI_IMF_MANAGER_H__
 #include <dali/public-api/object/base-handle.h>
 #include <dali/public-api/signals/dali-signal-v2.h>
 
@@ -224,4 +224,4 @@ public:
 
 } // namespace Dali
 
-#endif // _DALI_ADAPTOR_IMF_MANAGER_H_
+#endif // __DALI_TOOLKIT_TOOLKIT_IMF_MANAGER_H__
index 303f3a6..d62941b 100644 (file)
@@ -20,9 +20,7 @@
 
 // EXTERNAL INCLUDES
 #include <string>
-
-// INTERNAL INCLUDES
-#include <dali/public-api/orientation.h>
+#include <dali/public-api/adaptor-framework/orientation.h>
 
 namespace Dali
 {
index 3876b2f..e815105 100644 (file)
@@ -25,7 +25,7 @@
 #define __DALI_STYLE_MONITOR_H__
 #include <dali/public-api/object/base-handle.h>
 #include <dali/public-api/signals/dali-signal-v2.h>
-#include <dali/public-api/style-change.h>
+#include <dali/public-api/adaptor-framework/style-change.h>
 
 namespace Dali
 {
index 5e78d31..5cc1e0e 100644 (file)
@@ -44,13 +44,17 @@ void utc_dali_toolkit_control_cleanup(void)
 namespace
 {
 
-static bool gObjectCreatedCallBackCalled;
+bool gObjectCreatedCallBackCalled;
 
-static void TestCallback(BaseHandle handle)
+void TestCallback(BaseHandle handle)
 {
   gObjectCreatedCallBackCalled = true;
 }
 
+void TestVoidCallback()
+{
+}
+
 } // namespace
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -511,3 +515,29 @@ int UtcDaliControlKeyProperties(void)
 
   END_TEST;
 }
+
+int UtcDaliControlGestureSignals(void)
+{
+  ToolkitTestApplication application;
+  ConnectionTracker connectionTracker;
+  Control control = Control::New();
+
+  // Each gesture detector gets created when connecting to the gesture signals
+  DALI_TEST_CHECK( !control.GetTapGestureDetector() );
+  control.ConnectSignal( &connectionTracker, Control::SIGNAL_TAPPED, &TestVoidCallback );
+  DALI_TEST_CHECK( control.GetTapGestureDetector() );
+
+  DALI_TEST_CHECK( !control.GetPanGestureDetector() );
+  control.ConnectSignal( &connectionTracker, Control::SIGNAL_PANNED, &TestVoidCallback );
+  DALI_TEST_CHECK( control.GetPanGestureDetector() );
+
+  DALI_TEST_CHECK( !control.GetPinchGestureDetector() );
+  control.ConnectSignal( &connectionTracker, Control::SIGNAL_PINCHED, &TestVoidCallback );
+  DALI_TEST_CHECK( control.GetPinchGestureDetector() );
+
+  DALI_TEST_CHECK( !control.GetLongPressGestureDetector() );
+  control.ConnectSignal( &connectionTracker, Control::SIGNAL_LONG_PRESSED, &TestVoidCallback );
+  DALI_TEST_CHECK( control.GetLongPressGestureDetector() );
+
+  END_TEST;
+}
index 544c428..06e95e6 100644 (file)
@@ -507,9 +507,7 @@ BaseHandle Builder::DoCreate( const TreeNode& root, const TreeNode& node,
         }
       }
 
-      ApplyProperties( root, node, handle, replacements );
-
-      if( actor)
+      if( actor )
       {
         // add children of all the styles
         if( OptionalChild actors = IsChild( node, KEYNAME_ACTORS ) )
@@ -529,7 +527,10 @@ BaseHandle Builder::DoCreate( const TreeNode& root, const TreeNode& node,
           parent.Add( actor );
         }
       }
-
+      else
+      {
+        ApplyProperties( root, node, handle, replacements );
+      }
     }
     else
     {
index 1a3b893..c93d264 100755 (executable)
@@ -541,9 +541,19 @@ void ScrollViewTwistEffect::Apply(Actor child)
   }
 }
 
+void ScrollViewTwistEffect::SetMaxSwingAngle(const Vector2& maxSwingAngle)
+{
+  mMaxSwingAngle = maxSwingAngle;
+}
+
+Vector2 ScrollViewTwistEffect::GetMaxSwingAngle() const
+{
+  return mMaxSwingAngle;
+}
+
 void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function)
 {
-  if( mDropOffDistance.LengthSquared() > Math::MACHINE_EPSILON_1 && mDropOff.LengthSquared() > Math::MACHINE_EPSILON_1 )
+  if( distance.LengthSquared() > Math::MACHINE_EPSILON_1 && dropOff.LengthSquared() > Math::MACHINE_EPSILON_1 )
   {
     mFlags |= FlagDropOff;
     mDropOff = dropOff;
@@ -558,6 +568,13 @@ void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector
   mFlags = mFlags & ~FlagDefaultDropOff;
 }
 
+void ScrollViewTwistEffect::GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const
+{
+  dropOff = mDropOff;
+  distance = mDropOffDistance;
+  function = mDropOffFunction;
+}
+
 void ScrollViewTwistEffect::OnAttach(Toolkit::ScrollView& scrollView)
 {
   // Create effect-time property if not already created.
index d98a086..5aca6a0 100644 (file)
@@ -99,13 +99,23 @@ public:
   /**
    * @copydoc Toolkit::ScrollViewEffect::SetMaxSwingAngle
    */
-  void SetMaxSwingAngle(const Vector2& maxSwingAngle) { mMaxSwingAngle = maxSwingAngle; }
+  void SetMaxSwingAngle(const Vector2& maxSwingAngle);
+
+  /**
+   * @copydoc Toolkit::ScrollViewEffect::GetMaxSwingAngle
+   */
+  Vector2 GetMaxSwingAngle() const;
 
   /**
    * @copydoc Toolkit::ScrollViewEffect::SetSwingDropOff
    */
   void SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function = NULL);
 
+  /**
+   * @copydoc Toolkit::ScrollViewEffect::GetSwingDropOff
+   */
+  void GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const;
+
 public:
 
   /**
index 7a0729c..44c5aaf 100644 (file)
@@ -1951,11 +1951,7 @@ void TextInput::ScrollTextViewToMakeCursorVisible( const Vector3& cursorPosition
     scrollOffset.x += cursorPosition.x;
   }
 
-  if( cursorPosition.y - cursorSize.height < 0.f )
-  {
-    scrollOffset.y += ( cursorPosition.y - cursorSize.height );
-  }
-  else if( cursorPosition.y > controlSize.height )
+  if( cursorPosition.y - cursorSize.height < 0.f || cursorPosition.y > controlSize.height )
   {
     scrollOffset.y += cursorPosition.y;
   }
index 975152e..e45436f 100644 (file)
@@ -76,6 +76,12 @@ TypeRegistration CONTROL_TYPE( typeid(Control), typeid(CustomActor), Create );
 
 TypeAction ACTION_TYPE_1( CONTROL_TYPE, Toolkit::Control::ACTION_CONTROL_ACTIVATED, &Internal::Control::DoAction );
 
+SignalConnectorType SIGNAL_CONNECTOR_1( CONTROL_TYPE, Toolkit::Control::SIGNAL_KEY_EVENT,     &Internal::Control::DoConnectSignal );
+SignalConnectorType SIGNAL_CONNECTOR_2( CONTROL_TYPE, Toolkit::Control::SIGNAL_TAPPED,        &Internal::Control::DoConnectSignal );
+SignalConnectorType SIGNAL_CONNECTOR_3( CONTROL_TYPE, Toolkit::Control::SIGNAL_PANNED,        &Internal::Control::DoConnectSignal );
+SignalConnectorType SIGNAL_CONNECTOR_4( CONTROL_TYPE, Toolkit::Control::SIGNAL_PINCHED,       &Internal::Control::DoConnectSignal );
+SignalConnectorType SIGNAL_CONNECTOR_5( CONTROL_TYPE, Toolkit::Control::SIGNAL_LONG_PRESSED,  &Internal::Control::DoConnectSignal );
+
 /**
  * Structure which holds information about the background of a control
  */
@@ -945,6 +951,50 @@ bool Control::DoAction(BaseObject* object, const std::string& actionName, const
   return ret;
 }
 
+bool Control::DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor )
+{
+  Dali::BaseHandle handle( object );
+
+  bool connected( false );
+  Toolkit::Control control = Toolkit::Control::DownCast(handle);
+  if ( control )
+  {
+    Control& controlImpl( control.GetImplementation() );
+    connected = true;
+
+    if ( Toolkit::Control::SIGNAL_KEY_EVENT == signalName )
+    {
+      controlImpl.KeyEventSignal().Connect( tracker, functor );
+    }
+    else if( Toolkit::Control::SIGNAL_TAPPED == signalName )
+    {
+      controlImpl.EnableGestureDetection( Gesture::Tap );
+      controlImpl.GetTapGestureDetector().DetectedSignal().Connect( tracker, functor );
+    }
+    else if( Toolkit::Control::SIGNAL_PANNED == signalName )
+    {
+      controlImpl.EnableGestureDetection( Gesture::Pan );
+      controlImpl.GetPanGestureDetector().DetectedSignal().Connect( tracker, functor );
+    }
+    else if( Toolkit::Control::SIGNAL_PINCHED == signalName )
+    {
+      controlImpl.EnableGestureDetection( Gesture::Pinch );
+      controlImpl.GetPinchGestureDetector().DetectedSignal().Connect( tracker, functor );
+    }
+    else if( Toolkit::Control::SIGNAL_LONG_PRESSED == signalName )
+    {
+      controlImpl.EnableGestureDetection( Gesture::LongPress );
+      controlImpl.GetLongPressGestureDetector().DetectedSignal().Connect( tracker, functor );
+    }
+    else
+    {
+      // signalName does not match any signal
+      connected = false;
+    }
+  }
+  return connected;
+}
+
 void Control::DoStyleChange( Toolkit::StyleManager styleManager, StyleChange change )
 {
   if( change.themeChange )
@@ -1280,11 +1330,6 @@ void Control::SignalDisconnected( SlotObserver* slotObserver, CallbackBase* call
   mImpl->SignalDisconnected( slotObserver, callback );
 }
 
-std::size_t Control::GetConnectionCount() const
-{
-  return mImpl->GetConnectionCount();
-}
-
 Control::Control( ControlBehaviour behaviourFlags )
 : CustomActorImpl( behaviourFlags & REQUIRES_TOUCH_EVENTS ),
   mImpl(new Impl(*this))
index df822ef..fdcc05f 100644 (file)
@@ -179,6 +179,17 @@ public:
   static bool DoAction(BaseObject* object, const std::string& actionName, const std::vector<Property::Value>& attributes);
 
   /**
+   * Connects a callback function with the object's signals.
+   * @param[in] object The object providing the signal.
+   * @param[in] tracker Used to disconnect the signal.
+   * @param[in] signalName The signal to connect to.
+   * @param[in] functor A newly allocated FunctorDelegate.
+   * @return True if the signal was connected.
+   * @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor.
+   */
+  static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor );
+
+  /**
    * @brief If deriving classes wish to fine tune pinch gesture
    * detection then they can access the gesture detector through this
    * API and modify the detection.
@@ -638,11 +649,6 @@ public:
    */
   virtual void SignalDisconnected( SlotObserver* slotObserver, CallbackBase* callback );
 
-  /**
-   * @copydoc ConnectionTrackerInterface::GetConnectionCount
-   */
-  virtual std::size_t GetConnectionCount() const;
-
 protected:
 
   /**
index 917a5b9..d01ad83 100644 (file)
@@ -25,7 +25,12 @@ namespace Toolkit
 {
 
 const char* const Control::ACTION_CONTROL_ACTIVATED = "control-activated";
+
 const char* const Control::SIGNAL_KEY_EVENT = "key-event";
+const char* const Control::SIGNAL_TAPPED = "tapped";
+const char* const Control::SIGNAL_PANNED = "panned";
+const char* const Control::SIGNAL_PINCHED = "pinched";
+const char* const Control::SIGNAL_LONG_PRESSED = "long-pressed";
 
 Control Control::New()
 {
index 82ab066..951c2b6 100644 (file)
@@ -58,6 +58,10 @@ public:
   /// @name Signals
   /** @{ */
   static const char* const SIGNAL_KEY_EVENT;                 ///< name "key-event"
+  static const char* const SIGNAL_TAPPED;                    ///< name "tapped"
+  static const char* const SIGNAL_PANNED;                    ///< name "panned"
+  static const char* const SIGNAL_PINCHED;                   ///< name "pinched"
+  static const char* const SIGNAL_LONG_PRESSED;              ///< name "long-pressed"
   /** @} */
 
   /// @name Actions
index 5ad2e57..0472917 100644 (file)
@@ -85,11 +85,21 @@ void ScrollViewTwistEffect::SetMaxSwingAngle(const Vector2& maxSwingAngle)
   GetImpl(*this).SetMaxSwingAngle(maxSwingAngle);
 }
 
+Vector2 ScrollViewTwistEffect::GetMaxSwingAngle() const
+{
+  return GetImpl( *this ).GetMaxSwingAngle();
+}
+
 void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function)
 {
   GetImpl(*this).SetSwingDropOff(dropOff, distance, function);
 }
 
+void ScrollViewTwistEffect::GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const
+{
+  GetImpl(*this).GetSwingDropOff(dropOff, distance, function);
+}
+
 } // namespace Toolkit
 
 } // namespace Dali
index 719fba2..a208fb0 100644 (file)
@@ -130,6 +130,13 @@ public:
   void SetMaxSwingAngle(const Vector2& maxSwingAngle);
 
   /**
+   * @brief Retrieve the maximum swing angle when at zero drop off.
+   *
+   * @return The maximum swing angle for x and y axes
+   */
+  Vector2 GetMaxSwingAngle() const;
+
+  /**
    * @brief Set the drop off values to affect the amount of swing
    * angle applied to an actor the further it is from the scroll
    * position.
@@ -146,6 +153,15 @@ public:
    */
   void SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function = NULL);
 
+  /**
+   * @brief Get the drop off values that affect the amount of swing angle that is applied to an actor.
+   *
+   * @param[out]  dropOff   The current drop-off amount.
+   * @param[out]  distance  The current distance to apply drop-off in pixels.
+   * @param[out]  function  The current alpha function used to affect how the drop iff is applied over the distance.
+   */
+  void GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const;
+
 protected:
 
   /**
index 6ca2403..76b7af7 100644 (file)
@@ -330,15 +330,17 @@ public:
    * the boundary height the stage height minus the title's height.
    * Restrictions - The boundary box should be set up with a fixed z position for the text-input and the default camera.
    * @param[in] boundingOriginAndSize Rect( x coordinate, y coordinate, width, height )
-   * ------------------------------------------
-   * |(x,y)                                   |
-   * |o---------------------------------------|
-   * ||                                      ||
-   * ||            Bounding Box              || boundary height
-   * ||                                      ||
-   * |----------------------------------------|
-   * ------------------------------------------
-   *               boundary width
+   *                                  @code
+   *                                  +----------------------------------------+
+   *                                  |(x,y)                                   |
+   *                                  |+--------------------------------------+|
+   *                                  ||                                      ||
+   *                                  ||            Bounding Box              || boundary height
+   *                                  ||                                      ||
+   *                                  |+--------------------------------------+|
+   *                                  +----------------------------------------+
+   *                                                boundary width
+   *                                  @endcode
    */
   void SetBoundingRectangle( const Rect<float>& boundingOriginAndSize );
 
index 48827c3..87cbcc0 100644 (file)
@@ -1,7 +1,7 @@
 prefix=@prefix@
 exec_prefix=@exec_prefix@
 apiversion=@DALI_TOOLKIT_VERSION@
-libdir=${exec_prefix}/lib
+libdir=@libdir@
 includedir=@devincludepath@
 
 Name: Samsung OpenGLES Toolkit (including Toolkit)
index 8b84033..ba01ad5 100644 (file)
@@ -282,22 +282,6 @@ SUBGROUPING            = YES
 
 TYPEDEF_HIDES_STRUCT   = NO
 
-# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
-# determine which symbols to keep in memory and which to flush to disk.
-# When the cache is full, less often used symbols will be written to disk.
-# For small to medium size projects (<1000 input files) the default value is
-# probably good enough. For larger projects a too small cache size can cause
-# doxygen to be busy swapping symbols to and from disk most of the time
-# causing a significant performance penality.
-# If the system has enough physical memory increasing the cache will improve the
-# performance by keeping more symbols in memory. Note that the value works on
-# a logarithmic scale so increasing the size by one will rougly double the
-# memory usage. The cache size is given by this formula:
-# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
-# corresponding to a cache size of 2^16 = 65536 symbols
-
-SYMBOL_CACHE_SIZE      = 0
-
 #---------------------------------------------------------------------------
 # Build related configuration options
 #---------------------------------------------------------------------------
@@ -476,12 +460,6 @@ MAX_INITIALIZER_LINES  = 30
 
 SHOW_USED_FILES        = YES
 
-# If the sources in your project are distributed over multiple directories
-# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
-# in the documentation. The default is NO.
-
-SHOW_DIRECTORIES       = YES
-
 # Set the SHOW_FILES tag to NO to disable the generation of the Files page.
 # This will remove the Files entry from the Quick Index and from the
 # Folder Tree View (if specified). The default is YES.
@@ -835,12 +813,6 @@ HTML_FOOTER            =
 
 HTML_STYLESHEET        =
 
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
-# files or namespaces will be aligned in HTML using tables. If set to
-# NO a bullet list will be used.
-
-HTML_ALIGN_MEMBERS     = YES
-
 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
 # documentation will contain sections that can be hidden and shown after the
 # page has loaded. For this to work a browser that supports
@@ -1391,7 +1363,7 @@ HAVE_DOT               = NO
 # DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
 # containing the font.
 
-DOT_FONTNAME           = FreeSans
+DOT_FONTNAME           =
 
 # The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
 # The default size is 10pt.
index 3d75409..beff399 100644 (file)
@@ -18,7 +18,6 @@
       <tab type="filelist" visible="yes" title="" intro=""/>
       <tab type="globals" visible="yes" title="" intro=""/>
     </tab>
-    <tab type="dirs" visible="yes" title="" intro=""/>
     <tab type="examples" visible="yes" title="" intro=""/>
     <tab type="user" visible="yes" title="Deprecated" intro="" url="deprecated.html"/>
   </navindex>
index b6f38c0..57888b0 100644 (file)
@@ -31,7 +31,7 @@ namespace Toolkit
 
 const unsigned int TOOLKIT_MAJOR_VERSION = 1;
 const unsigned int TOOLKIT_MINOR_VERSION = 0;
-const unsigned int TOOLKIT_MICRO_VERSION = 4;
+const unsigned int TOOLKIT_MICRO_VERSION = 6;
 const char * const TOOLKIT_BUILD_DATE    = __DATE__ " " __TIME__;
 
 #ifdef DEBUG_ENABLED
index aec438c..18086e8 100644 (file)
@@ -1,6 +1,6 @@
 Name:       dali-toolkit
 Summary:    The OpenGLES Canvas Core Library Toolkit
-Version:    1.0.4
+Version:    1.0.6
 Release:    1
 Group:      System/Libraries
 License:    Apache-2.0