From: Adeel Kazmi Date: Thu, 28 Aug 2014 17:41:54 +0000 (-0700) Subject: Merge "Remove unnecessary method from control-impl" into tizen X-Git-Tag: dali_1.0.8~13 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=710c2712fb20e905b48a855b218c6cfce8fb2434;hp=42112a7873ace9129326e94b2d31e83b7d9657b9 Merge "Remove unnecessary method from control-impl" into tizen --- diff --git a/base/dali-toolkit/internal/builder/builder-impl.cpp b/base/dali-toolkit/internal/builder/builder-impl.cpp index 544c428..06e95e6 100644 --- a/base/dali-toolkit/internal/builder/builder-impl.cpp +++ b/base/dali-toolkit/internal/builder/builder-impl.cpp @@ -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 { diff --git a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp index 1a3b893..c93d264 100755 --- a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp +++ b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp @@ -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. diff --git a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h index d98a086..5aca6a0 100644 --- a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h +++ b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h @@ -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: /** 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 7a0729c..44c5aaf 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 @@ -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; } diff --git a/base/dali-toolkit/public-api/controls/control-impl.cpp b/base/dali-toolkit/public-api/controls/control-impl.cpp index 7fcbf76..e45436f 100644 --- a/base/dali-toolkit/public-api/controls/control-impl.cpp +++ b/base/dali-toolkit/public-api/controls/control-impl.cpp @@ -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 ) diff --git a/base/dali-toolkit/public-api/controls/control-impl.h b/base/dali-toolkit/public-api/controls/control-impl.h index fb2d062..fdcc05f 100644 --- a/base/dali-toolkit/public-api/controls/control-impl.h +++ b/base/dali-toolkit/public-api/controls/control-impl.h @@ -179,6 +179,17 @@ public: static bool DoAction(BaseObject* object, const std::string& actionName, const std::vector& 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. diff --git a/base/dali-toolkit/public-api/controls/control.cpp b/base/dali-toolkit/public-api/controls/control.cpp index 917a5b9..d01ad83 100644 --- a/base/dali-toolkit/public-api/controls/control.cpp +++ b/base/dali-toolkit/public-api/controls/control.cpp @@ -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() { diff --git a/base/dali-toolkit/public-api/controls/control.h b/base/dali-toolkit/public-api/controls/control.h index 82ab066..951c2b6 100644 --- a/base/dali-toolkit/public-api/controls/control.h +++ b/base/dali-toolkit/public-api/controls/control.h @@ -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 diff --git a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp index 5ad2e57..0472917 100644 --- a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp +++ b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp @@ -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 diff --git a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h index 719fba2..a208fb0 100644 --- a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h +++ b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h @@ -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: /** diff --git a/base/dali-toolkit/public-api/controls/text-input/text-input.h b/base/dali-toolkit/public-api/controls/text-input/text-input.h index 6ca2403..76b7af7 100644 --- a/base/dali-toolkit/public-api/controls/text-input/text-input.h +++ b/base/dali-toolkit/public-api/controls/text-input/text-input.h @@ -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& boundingOriginAndSize ); diff --git a/build/tizen/docs/dali.doxy.in b/build/tizen/docs/dali.doxy.in index 8b84033..ba01ad5 100644 --- a/build/tizen/docs/dali.doxy.in +++ b/build/tizen/docs/dali.doxy.in @@ -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. diff --git a/docs/DaliLayout.xml b/docs/DaliLayout.xml index 3d75409..beff399 100644 --- a/docs/DaliLayout.xml +++ b/docs/DaliLayout.xml @@ -18,7 +18,6 @@ - diff --git a/optional/dali-toolkit/public-api/dali-toolkit-version.cpp b/optional/dali-toolkit/public-api/dali-toolkit-version.cpp index 297aeb4..57888b0 100644 --- a/optional/dali-toolkit/public-api/dali-toolkit-version.cpp +++ b/optional/dali-toolkit/public-api/dali-toolkit-version.cpp @@ -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 = 5; +const unsigned int TOOLKIT_MICRO_VERSION = 6; const char * const TOOLKIT_BUILD_DATE = __DATE__ " " __TIME__; #ifdef DEBUG_ENABLED diff --git a/packaging/dali-toolkit.spec b/packaging/dali-toolkit.spec index f730f3d..18086e8 100644 --- a/packaging/dali-toolkit.spec +++ b/packaging/dali-toolkit.spec @@ -1,6 +1,6 @@ Name: dali-toolkit Summary: The OpenGLES Canvas Core Library Toolkit -Version: 1.0.5 +Version: 1.0.6 Release: 1 Group: System/Libraries License: Apache-2.0