1 #ifndef __DALI_TOOLKIT_SCROLL_VIEW_EFFECT_H__
2 #define __DALI_TOOLKIT_SCROLL_VIEW_EFFECT_H__
5 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
22 #include <dali/public-api/common/vector-wrapper.h>
23 #include <dali/public-api/object/base-handle.h>
36 namespace Internal DALI_INTERNAL
38 class ScrollViewEffect;
39 class ScrollViewWobbleEffect;
43 class ScrollViewEffect;
45 typedef std::vector<ScrollViewEffect> ScrollViewEffectContainer; ///< Container of Dali::Toolkit::ScrollViewEffect%s
46 typedef ScrollViewEffectContainer::iterator ScrollViewEffectIter; ///< Iterator for Dali::Toolkit::ScrollViewEffectContainer
47 typedef ScrollViewEffectContainer::const_iterator ScrollViewEffectConstIter; ///< Const Iterator for Dali::Toolkit::ScrollViewEffectContainer
50 * @brief ScrollView Effect base class, used to apply custom effects to a
51 * ScrollView instance.
53 * Such effects are purely logical (i.e. physics), and may produce
54 * properties that can be used with visual effects. Such as creating
55 * constraints that are applied to ShaderEffects or Actors using these
56 * properties as inputs.
58 class DALI_IMPORT_API ScrollViewEffect : public Dali::BaseHandle
64 * @brief Create an uninitialized ScrollViewEffect; this can only be initialized with derived classes.
66 * Calling member functions with an uninitialized Toolkit::BaseObject is not allowed.
70 public: // Not intended for application developers
73 * @brief This constructor is used by Dali New() methods.
75 * @param [in] impl A pointer to a newly allocated Dali resource
77 explicit DALI_INTERNAL ScrollViewEffect(Internal::ScrollViewEffect *impl);
81 } // namespace Toolkit
85 #endif // __DALI_TOOLKIT_SCROLL_VIEW_EFFECT_H__