63c28f6b36b614a101e081abc987406ea1321942
[platform/core/uifw/dali-toolkit.git] / plugins / dali-swig / SWIG / dali-toolkit.i
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17 %apply unsigned int& OUTPUT { unsigned int& volume };
18
19 %ignore *::AccessibilityManager(Internal::AccessibilityManager*);
20 %ignore *::Alignment(Internal::Alignment&);
21 %ignore *::Alignment(Dali::Internal::CustomActor*);
22 %ignore *::Button(Internal::Button&);
23 %ignore *::Button(Dali::Internal::CustomActor*);
24 %ignore *::CheckBoxButton(Internal::CheckBoxButton&);
25 %ignore *::CheckBoxButton(Dali::Internal::CustomActor*);
26 %ignore *::Control(Dali::Internal::CustomActor*);
27 %ignore *::FlexContainer(Internal::FlexContainer&);
28 %ignore *::FlexContainer(Dali::Internal::CustomActor*);
29 %ignore *::GaussianBlurView(Internal::GaussianBlurView&);
30 %ignore *::GaussianBlurView(Dali::Internal::CustomActor*);
31 %ignore *::ImageView(Internal::ImageView&);
32 %ignore *::ImageView(Dali::Internal::CustomActor*);
33 %ignore *::ItemView(Internal::ItemView&);
34 %ignore *::ItemView(Dali::Internal::CustomActor*);
35 %ignore *::KeyboardFocusManager(Internal::KeyboardFocusManager*);
36 %ignore *::Model3dView(Internal::Model3dView&);
37 %ignore *::Model3dView(Dali::Internal::CustomActor*);
38 %ignore *::PageTurnLandscapeView(Internal::PageTurnLandscapeView&);
39 %ignore *::PageTurnLandscapeView(Dali::Internal::CustomActor*);
40 %ignore *::PageTurnPortraitView(Internal::PageTurnPortraitView&);
41 %ignore *::PageTurnPortraitView(Dali::Internal::CustomActor*);
42 %ignore *::PageTurnView(Internal::PageTurnView&);
43 %ignore *::PageTurnView(Dali::Internal::CustomActor*);
44 %ignore *::Popup(Internal::Popup&);
45 %ignore *::Popup(Dali::Internal::CustomActor*);
46 %ignore *::PushButton(Internal::PushButton&);
47 %ignore *::PushButton(Dali::Internal::CustomActor*);
48 %ignore *::RadioButton(Internal::RadioButton&);
49 %ignore *::RadioButton(Dali::Internal::CustomActor*);
50 %ignore *::Scrollable(Internal::Scrollable&);
51 %ignore *::Scrollable(Dali::Internal::CustomActor*);
52 %ignore *::ScrollBar(Internal::ScrollBar&);
53 %ignore *::ScrollBar(Dali::Internal::CustomActor*);
54 %ignore *::ScrollView(Internal::ScrollView&);
55 %ignore *::ScrollView(Dali::Internal::CustomActor*);
56 %ignore *::ScrollViewEffect(Internal::ScrollViewEffect*);
57 %ignore *::Slider(Internal::Slider&);
58 %ignore *::Slider(Dali::Internal::CustomActor*);
59 %ignore *::StyleManager(Internal::StyleManager*);
60 %ignore *::TableView(Internal::TableView&);
61 %ignore *::TableView(Dali::Internal::CustomActor*);
62 %ignore *::TextEditor(Internal::TextEditor&);
63 %ignore *::TextEditor(Dali::Internal::CustomActor*);
64 %ignore *::TextField(Internal::TextField&);
65 %ignore *::TextField(Dali::Internal::CustomActor*);
66 %ignore *::TextLabel(Internal::TextLabel&);
67 %ignore *::TextLabel(Dali::Internal::CustomActor*);
68 %ignore *::VideoView(Internal::VideoView&);
69 %ignore *::VideoView(Dali::Internal::CustomActor*);
70 %ignore *::VisualFactory(Dali::Internal::VisualFactory*);
71 %ignore *::Base(Dali::Internal::Visual::Base*);
72 %ignore *::GetExtension();
73 %ignore *::GetControlExtension();
74
75 %rename(ControlImpl) Dali::Toolkit::Internal::Control;
76 %rename(VisualBase) Dali::Toolkit::Visual::Base;
77 %rename(ControlOrientationType) Dali::Toolkit::ControlOrientation::Type;
78 %rename(DefaultItemLayoutType) Dali::Toolkit::DefaultItemLayout::Type;
79 %rename(NewItemLayout) Dali::Toolkit::DefaultItemLayout::New;
80 %rename(ContentDirectionType) Dali::Toolkit::FlexContainer::ContentDirection;
81 %rename(FlexDirectionType) Dali::Toolkit::FlexContainer::FlexDirection;
82 %rename(IluminationTypeEnum) Dali::Toolkit::Model3dView::IlluminationType;
83 %rename(DisplayStateType) Dali::Toolkit::Popup::DisplayState;
84 %rename(ContextualModeType) Dali::Toolkit::Popup::ContextualMode;
85 %rename(AnimationModeType) Dali::Toolkit::Popup::AnimationMode;
86 %rename(IndicatorHeightPolicyType) Dali::Toolkit::ScrollBar::IndicatorHeightPolicy;
87 %rename(ExceedPolicyType) Dali::Toolkit::TextField::ExceedPolicy;
88 %rename(ToolkitPropertyRange) Dali::Toolkit::PropertyRanges;
89 %rename(VisualType) Dali::Toolkit::Visual::Type;
90 %rename(VisualShaderType) Dali::Toolkit::Visual::Shader::Property;
91 %rename(GradientVisualUnitsType) Dali::Toolkit::GradientVisual::Units::Type;
92 %rename(GradientVisualSpreadMethodType) Dali::Toolkit::GradientVisual::SpreadMethod::Type;
93 %rename(MeshVisualShadingModeValue) Dali::Toolkit::MeshVisual::ShadingMode::Value;
94 %rename(PrimitiveVisualShapeType) Dali::Toolkit::PrimitiveVisual::Shape::Type;
95 %rename(PRIMITIVE_VISUAL_COLOR) Dali::Toolkit::PrimitiveVisual::Property::COLOR;
96 %rename(PRIMITIVE_VISUAL_LIGHT_POSITION) Dali::Toolkit::PrimitiveVisual::Property::LIGHT_POSITION;
97 %rename(VISUAL_PROPERTY_TYPE) Dali::Toolkit::Visual::Property::TYPE;
98 %rename(VISUAL_PROPERTY_SHADER) Dali::Toolkit::Visual::Property::SHADER;
99 %rename(IMAGE_VISUAL_URL) Dali::Toolkit::ImageVisual::Property::URL;
100 %rename(IMAGE_VISUAL_FITTING_MODE) Dali::Toolkit::ImageVisual::Property::FITTING_MODE;
101 %rename(IMAGE_VISUAL_SAMPLING_MODE) Dali::Toolkit::ImageVisual::Property::SAMPLING_MODE;
102 %rename(IMAGE_VISUAL_DESIRED_WIDTH) Dali::Toolkit::ImageVisual::Property::DESIRED_WIDTH;
103 %rename(IMAGE_VISUAL_DESIRED_HEIGHT) Dali::Toolkit::ImageVisual::Property::DESIRED_HEIGHT;
104 %rename(IMAGE_VISUAL_SYNCHRONOUS_LOADING) Dali::Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING;
105 %rename(IMAGE_VISUAL_BORDER_ONLY) Dali::Toolkit::ImageVisual::Property::BORDER_ONLY;
106
107 %csconstvalue("PropertyRanges.PROPERTY_REGISTRATION_START_INDEX") PROPERTY_START_INDEX;
108 %csconstvalue("Control.PropertyRange.PROPERTY_START_INDEX+1000") PROPERTY_END_INDEX;
109 %csconstvalue("PropertyRanges.CHILD_PROPERTY_REGISTRATION_START_INDEX") CHILD_PROPERTY_START_INDEX;
110 %csconstvalue("PropertyRanges.CHILD_PROPERTY_REGISTRATION_START_INDEX+1000") CHILD_PROPERTY_END_INDEX;
111 %csconstvalue("PropertyRanges.ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX") ANIMATABLE_PROPERTY_START_INDEX;
112 %csconstvalue("PropertyRanges.ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX+1000") ANIMATABLE_PROPERTY_END_INDEX;
113 %csconstvalue("PropertyRanges.CORE_PROPERTY_MAX_INDEX+1") VISUAL_PROPERTY_BASE_START_INDEX;
114 %csconstvalue("1 << 5") REQUIRES_STYLE_CHANGE_SIGNALS;
115 %csconstvalue("1 << 6") REQUIRES_KEYBOARD_NAVIGATION_SUPPORT;
116
117 typedef unsigned int ItemId;
118 typedef std::vector<ItemId> ItemIdContainer;
119 typedef std::pair<ItemId, Actor> Item;
120 typedef std::vector<Item> ItemContainer;
121 typedef Dali::IntrusivePtr<Dali::Toolkit::Ruler> RulerPtr;
122
123 %include <dali-toolkit/public-api/toolkit-property-index-ranges.h>
124
125 %include <dali-toolkit/public-api/visuals/visual-properties.h>
126 %include <dali-toolkit/public-api/visuals/border-visual-properties.h>
127 %include <dali-toolkit/public-api/visuals/color-visual-properties.h>
128 %include <dali-toolkit/public-api/visuals/gradient-visual-properties.h>
129 %include <dali-toolkit/public-api/visuals/image-visual-properties.h>
130 %include <dali-toolkit/public-api/visuals/mesh-visual-properties.h>
131 %include <dali-toolkit/public-api/visuals/primitive-visual-properties.h>
132
133 %include <dali-toolkit/devel-api/builder/builder.h>
134
135 %include <dali-toolkit/public-api/controls/control-impl.h>
136 %include <dali-toolkit/public-api/controls/control.h>
137
138 %include <dali-toolkit/public-api/controls/alignment/alignment.h>
139 %include <dali-toolkit/public-api/controls/buttons/button.h>
140 %include <dali-toolkit/public-api/controls/buttons/check-box-button.h>
141 %include <dali-toolkit/public-api/controls/buttons/push-button.h>
142 %include <dali-toolkit/public-api/controls/buttons/radio-button.h>
143 %include <dali-toolkit/public-api/controls/flex-container/flex-container.h>
144 %include <dali-toolkit/public-api/controls/gaussian-blur-view/gaussian-blur-view.h>
145 %include <dali-toolkit/public-api/controls/image-view/image-view.h>
146 %include <dali-toolkit/public-api/controls/model3d-view/model3d-view.h>
147 %include <dali-toolkit/public-api/controls/page-turn-view/page-factory.h>
148 %include <dali-toolkit/public-api/controls/page-turn-view/page-turn-view.h>
149 %include <dali-toolkit/public-api/controls/page-turn-view/page-turn-landscape-view.h>
150 %include <dali-toolkit/public-api/controls/page-turn-view/page-turn-portrait-view.h>
151 %include <dali-toolkit/public-api/controls/scroll-bar/scroll-bar.h>
152 %include <dali-toolkit/public-api/controls/scrollable/scrollable.h>
153 %include <dali-toolkit/public-api/enums.h>
154 %include <dali-toolkit/public-api/controls/scrollable/item-view/default-item-layout.h>
155 %include <dali-toolkit/public-api/controls/scrollable/item-view/item-factory.h>
156 %include <dali-toolkit/public-api/controls/scrollable/item-view/item-layout.h>
157 %include <dali-toolkit/public-api/controls/scrollable/item-view/item-view-declarations.h>
158 %include <dali-toolkit/public-api/controls/scrollable/item-view/item-view.h>
159 %include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-constraints.h>
160 %include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-effect.h>
161 %include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-page-path-effect.h>
162 %include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view.h>
163 %include <dali-toolkit/public-api/controls/table-view/table-view.h>
164 %include <dali-toolkit/public-api/text/rendering-backend.h>
165 %include <dali-toolkit/public-api/controls/text-controls/text-editor.h>
166 %include <dali-toolkit/public-api/controls/text-controls/text-field.h>
167 %include <dali-toolkit/public-api/controls/text-controls/text-label.h>
168 %include <dali-toolkit/public-api/accessibility-manager/accessibility-manager.h>
169 %include <dali-toolkit/public-api/focus-manager/keyboard-focus-manager.h>
170 %include <dali-toolkit/public-api/styling/style-manager.h>
171 %include <dali-toolkit/public-api/controls/slider/slider.h>
172 %include <dali-toolkit/public-api/controls/video-view/video-view.h>
173 %include <dali-toolkit/devel-api/controls/popup/popup.h>
174
175 %include <dali-toolkit/devel-api/visual-factory/visual-base.h>
176 %include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
177
178 %template(ItemIdContainer) std::vector<unsigned int>;
179 %template(Item) std::pair<unsigned int, Dali::Actor>;
180 %template(ItemContainer) std::vector<std::pair<unsigned int, Dali::Actor>>;
181 %template(ActorContainer) std::vector<Dali::Actor>;
182 %template(AccessibilityActionSignal) Dali::Signal<bool(Dali::Toolkit::AccessibilityManager&)>;
183 %template(AccessibilityActionScrollSignal) Dali::Signal<bool(Dali::Toolkit::AccessibilityManager&, const Dali::TouchEvent&)>;
184 %template(AccessibilityFocusOvershotSignal) Dali::Signal<void(Dali::Actor, Dali::Toolkit::AccessibilityManager::FocusOvershotDirection)>;
185 %template(FocusChangedSignal) Dali::Signal<void(Dali::Actor, Dali::Actor)>;
186 %template(KeyboardPreFocusChangeSignal) Dali::Signal<Dali::Actor(Dali::Actor, Dali::Actor, Dali::Toolkit::Control::KeyboardFocus::Direction)>;
187 %template(FocusGroupChangedSignal) Dali::Signal<void(Dali::Actor, bool)>;
188 %template(StyleChangedSignal) Dali::Signal<void(Dali::Toolkit::StyleManager, Dali::StyleChange::Type)>;
189 %template(ButtonSignal) Dali::Signal<bool(Dali::Toolkit::Button)>;
190 %template(GaussianBlurViewSignal) Dali::Signal<void (Dali::Toolkit::GaussianBlurView)>;
191 %template(PageTurnSignal) Dali::Signal<void(Dali::Toolkit::PageTurnView, unsigned int, bool)>;
192 %template(PagePanSignal) Dali::Signal<void(Dali::Toolkit::PageTurnView)>;
193 %template(ScrollViewSnapStartedSignal) Dali::Signal< void(const Dali::Toolkit::ScrollView::SnapEvent&)>;
194 %template(ScrollableSignal) Dali::Signal< void(const Dali::Vector2&)>;
195 %template(TextEditorSignal) Dali::Signal<void(Dali::Toolkit::TextEditor)>;
196 %template(TextFieldSignal) Dali::Signal<void(Dali::Toolkit::TextField)>;
197 %template(ControlKeyEventSignal) Dali::Signal<bool(Dali::Toolkit::Control, const Dali::KeyEvent&)>;
198 %template(KeyInputFocusSignal) Dali::Signal<void(Dali::Toolkit::Control)>;
199 %template(VideoViewSignal) Dali::Signal<void(Dali::Toolkit::VideoView&)>;
200 %template(SliderValueChangedSignal) Dali::Signal<bool(Dali::Toolkit::Slider, float)>;
201 %template(SliderMarkReachedSignal) Dali::Signal<bool(Dali::Toolkit::Slider, int)>;
202 %template(RulerPtr) Dali::IntrusivePtr<Dali::Toolkit::Ruler>;