1 #ifndef DALI_TOOLKIT_SCROLL_VIEW_EFFECT_H
2 #define DALI_TOOLKIT_SCROLL_VIEW_EFFECT_H
5 * Copyright (c) 2020 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/object/base-handle.h>
25 #include <dali-toolkit/public-api/dali-toolkit-common.h>
36 namespace Internal DALI_INTERNAL
38 class ScrollViewEffect;
39 class ScrollViewWobbleEffect;
40 } // namespace DALI_INTERNAL
42 * @addtogroup dali_toolkit_controls_scroll_view
47 class ScrollViewEffect;
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.
59 class DALI_TOOLKIT_API ScrollViewEffect : public Dali::BaseHandle
63 * @brief Creates an uninitialized ScrollViewEffect; this can only be initialized with derived classes.
65 * 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.
76 * @param[in] impl A pointer to a newly allocated Dali resource
78 explicit DALI_INTERNAL ScrollViewEffect(Internal::ScrollViewEffect* impl);
85 } // namespace Toolkit
89 #endif // DALI_TOOLKIT_SCROLL_VIEW_EFFECT_H