7b35e44e6be03c6a65087c4af6d6404b574da6ca
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / NUIConstants.cs
1 // Copyright (c) 2017 Samsung Electronics Co., Ltd.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14
15 using System;
16 using System.ComponentModel;
17
18 namespace Tizen.NUI
19 {
20     /// <summary>
21     /// This specifies all the scroll mode type.
22     /// </summary>
23     /// <since_tizen> 3 </since_tizen>
24     public enum ScrollModeType
25     {
26         /// <summary>
27         /// Whether the content can be scrolled along the X axis or not.
28         /// </summary>
29         /// <since_tizen> 3 </since_tizen>
30         XAxisScrollEnabled,
31         /// <summary>
32         /// When set, causes scroll view to snap to multiples of the
33         /// value of the interval while flicking along the X axis.
34         /// </summary>
35         /// <since_tizen> 3 </since_tizen>
36         XAxisSnapToInterval,
37         /// <summary>
38         /// When set, the scroll view is unable to scroll beyond the
39         /// value of the boundary along the X axis.
40         /// </summary>
41         /// <since_tizen> 3 </since_tizen>
42         XAxisScrollBoundary,
43         /// <summary>
44         /// Whether the content can be scrolled along the Y axis or not.
45         /// </summary>
46         /// <since_tizen> 3 </since_tizen>
47         YAxisScrollEnabled,
48         /// <summary>
49         /// When set, causes scroll view to snap to multiples of the
50         /// value of the interval while flicking along the Y axis.
51         /// </summary>
52         /// <since_tizen> 3 </since_tizen>
53         YAxisSnapToInterval,
54         /// <summary>
55         /// When set, the scroll view is unable to scroll beyond the
56         /// value of the boundary along the Y axis.
57         /// </summary>
58         /// <since_tizen> 3 </since_tizen>
59         YAxisScrollBoundary
60     }
61
62     /// <summary>
63     /// This specifies whether the actor uses its own color or inherits.
64     /// </summary>
65     /// <since_tizen> 3 </since_tizen>
66     public enum ColorMode
67     {
68         /// <summary>
69         /// Actor will use its own color.
70         /// </summary>
71         UseOwnColor,
72          /// <summary>
73         /// Actor will use its parent color.
74         /// </summary>
75         UseParentColor,
76         /// <summary>
77         /// Actor will blend its color with its parents color.
78         /// </summary>
79         UseOwnMultiplyParentColor,
80         /// <summary>
81         /// Actor will blend its alpha with its parents alpha. This means when the parent fades in or out, the child does as well. This is the default.
82         /// </summary>
83         UseOwnMultiplyParentAlpha
84     }
85
86     /// <summary>
87     /// This specifies the dimension of the width or the height for size negotiation.
88     /// </summary>
89     /// <since_tizen> 3 </since_tizen>
90     public enum DimensionType
91     {
92         /// <summary>
93         /// Width dimension.
94         /// </summary>
95         Width = 0x1,
96         /// <summary>
97         /// Height dimension.
98         /// </summary>
99         Height = 0x2,
100         /// <summary>
101         /// Mask to cover all flags.
102         /// </summary>
103         AllDimensions = 0x3
104     }
105
106     /// <summary>
107     /// Enumeration for the instance of how the actor and it's children will be drawn.
108     /// </summary>
109     /// <since_tizen> 3 </since_tizen>
110     public enum DrawModeType
111     {
112         /// <summary>
113         /// The default draw-mode.
114         /// </summary>
115         Normal = 0,
116         /// <summary>
117         /// Draw the actor and its children as an overlay.
118         /// </summary>
119         Overlay2D = 1,
120         /// <summary>
121         /// Will be replaced by separate ClippingMode enum. Draw the actor and its children into the stencil buffer.
122         /// </summary>
123         Stencil = 3
124     }
125
126     /// <summary>
127     /// Enumeration for size negotiation resize policies.
128     /// </summary>
129     /// <since_tizen> 3 </since_tizen>
130     public enum ResizePolicyType
131     {
132         /// <summary>
133         /// Size is fixed as set by SetSize.
134         /// </summary>
135         Fixed,
136         /// <summary>
137         /// Size is to use the actor's natural size.
138         /// </summary>
139         /// <see cref="ViewImpl.GetNaturalSize"/>
140         UseNaturalSize,
141         /// <summary>
142         /// Size is to fill up to the actor's parent's bounds. Aspect ratio is not maintained.
143         /// </summary>
144         FillToParent,
145         /// <summary>
146         /// The actors size will be ( ParentSize * SizeRelativeToParentFactor ).
147         /// </summary>
148         SizeRelativeToParent,
149         /// <summary>
150         /// The actors size will be ( ParentSize + SizeRelativeToParentFactor ).
151         /// </summary>
152         SizeFixedOffsetFromParent,
153         /// <summary>
154         /// The size will adjust to wrap around all children.
155         /// </summary>
156         FitToChildren,
157         /// <summary>
158         /// One dimension is dependent on the other.
159         /// </summary>
160         DimensionDependency,
161         /// <summary>
162         /// The size will be assigned to the actor.
163         /// </summary>
164         UseAssignedSize
165     }
166
167     /// <summary>
168     /// Enumeration for policies to determine how an actor should resize itself when having its size set in size negotiation.
169     /// </summary>
170     /// <since_tizen> 3 </since_tizen>
171     public enum SizeScalePolicyType
172     {
173         /// <summary>
174         /// Use the size that was set.
175         /// </summary>
176         UseSizeSet,
177         /// <summary>
178         /// Fit within the size set maintaining natural size aspect ratio.
179         /// </summary>
180         FitWithAspectRatio,
181         /// <summary>
182         /// Fit within the size set maintaining natural size aspect ratio.
183         /// </summary>
184         FillWithAspectRatio
185     }
186
187     /// <summary>
188     /// Enumeration for the ClippingMode describing how this actor's children will be clipped against it.
189     /// </summary>
190     /// <since_tizen> 3 </since_tizen>
191     public enum ClippingModeType
192     {
193         /// <summary>
194         /// This actor will not clip its children.
195         /// </summary>
196         Disabled,
197         /// <summary>
198         /// This actor will clip all children to within its boundaries (the actor will also be visible itself).
199         /// </summary>
200         ClipChildren,
201         /// <summary>
202         /// This Actor will clip all children within a screen-aligned rectangle encompassing its boundaries (the actor will also be visible itself).
203         /// </summary>
204         /// <since_tizen> 4 </since_tizen>
205         ClipToBoundingBox
206     }
207
208     /// <summary>
209     /// Enumeration for type determination of how the camera operates.
210     /// </summary>
211     /// <since_tizen> 3 </since_tizen>
212     public enum CameraType
213     {
214         /// <summary>
215         /// Camera orientation is taken from the CameraActor.
216         /// </summary>
217         FreeLook,
218         /// <summary>
219         /// Camera is oriented to always look at a target.
220         /// </summary>
221         LookAtTarget
222     }
223
224     /// <summary>
225     /// Enumeration for the projection modes.
226     /// </summary>
227     /// <since_tizen> 3 </since_tizen>
228     public enum ProjectionMode
229     {
230         /// <summary>
231         /// Distance causes foreshortening; objects further from the camera appear smaller.
232         /// </summary>
233         PerspectiveProjection,
234         /// <summary>
235         /// Relative distance from the camera does not affect the size of objects.
236         /// </summary>
237         OrthographicProjection
238     }
239
240     /// <summary>
241     /// This specifies customView behavior types.
242     /// </summary>
243     /// <since_tizen> 3 </since_tizen>
244     public enum CustomViewBehaviour
245     {
246         /// <summary>
247         /// Use to provide default behavior (size negotiation is on, event callbacks are not called).
248         /// </summary>
249         ViewBehaviourDefault = 0,
250         /// <summary>
251         /// True if the control does not need size negotiation, i.e., it can be skipped in the algorithm.
252         /// </summary>
253         DisableSizeNegotiation = 1 << 0,
254         /// <summary>
255         /// Use to provide key navigation support.
256         /// </summary>
257         RequiresKeyboardNavigationSupport = 1 << 5,
258         /// <summary>
259         /// Use to make style change event disabled.
260         /// </summary>
261         DisableStyleChangeSignals = 1 << 6,
262         /// <summary>
263         /// [EditorBrowsable(EditorBrowsableState.Never)]
264         /// </summary>
265         /// <since_tizen> 3 </since_tizen>
266         [EditorBrowsable(EditorBrowsableState.Never)]
267         LastViewBehaviourFlag
268     }
269
270     /// <summary>
271     /// An enum of Device Class types.
272     /// </summary>
273     /// <since_tizen> 3 </since_tizen>
274     public enum DeviceClassType
275     {
276         /// <summary>
277         /// Not a device.
278         /// </summary>
279         /// <since_tizen> 3 </since_tizen>
280         None,
281         /// <summary>
282         /// The user/seat (the user themselves).
283         /// </summary>
284         /// <since_tizen> 3 </since_tizen>
285         Seat,
286         /// <summary>
287         /// A regular keyboard, numberpad or attached buttons.
288         /// </summary>
289         /// <since_tizen> 3 </since_tizen>
290         Keyboard,
291         /// <summary>
292         /// A mouse, trackball or touchpad relative motion device.
293         /// </summary>
294         /// <since_tizen> 3 </since_tizen>
295         Mouse,
296         /// <summary>
297         /// A touchscreen with fingers or stylus.
298         /// </summary>
299         /// <since_tizen> 3 </since_tizen>
300         Touch,
301         /// <summary>
302         /// A special pen device.
303         /// </summary>
304         /// <since_tizen> 3 </since_tizen>
305         Pen,
306         /// <summary>
307         ///  A pointing device based on laser, infrared or similar technology.
308         /// </summary>
309         /// <since_tizen> 3 </since_tizen>
310         Pointer,
311         /// <summary>
312         /// A gamepad controller or joystick.
313         /// </summary>
314         /// <since_tizen> 3 </since_tizen>
315         Gamepad
316     }
317
318     /// <summary>
319     /// An enum of Device Subclass types.
320     /// </summary>
321     /// <since_tizen> 4 </since_tizen>
322     public enum DeviceSubClassType
323     {
324         /// <summary>
325         /// Not a device
326         /// </summary>
327         /// <since_tizen> 4 </since_tizen>
328         None,
329         /// <summary>
330         /// The normal flat of your finger
331         /// </summary>
332         /// <since_tizen> 4 </since_tizen>
333         Finger,
334         /// <summary>
335         /// A fingernail
336         /// </summary>
337         /// <since_tizen> 4 </since_tizen>
338         Fingernail,
339         /// <summary>
340         /// A Knuckle
341         /// </summary>
342         /// <since_tizen> 4 </since_tizen>
343         Knuckle,
344         /// <summary>
345         /// The palm of a users hand
346         /// </summary>
347         /// <since_tizen> 4 </since_tizen>
348         Palm,
349         /// <summary>
350         /// The side of your hand
351         /// </summary>
352         /// <since_tizen> 4 </since_tizen>
353         HandSide,
354         /// <summary>
355         /// The flat of your hand
356         /// </summary>
357         /// <since_tizen> 4 </since_tizen>
358         HandFlat,
359         /// <summary>
360         /// The tip of a pen
361         /// </summary>
362         /// <since_tizen> 4 </since_tizen>
363         PenTip,
364         /// <summary>
365         /// A trackpad style mouse
366         /// </summary>
367         /// <since_tizen> 4 </since_tizen>
368         Trackpad,
369         /// <summary>
370         /// A trackpoint style mouse
371         /// </summary>
372         /// <since_tizen> 4 </since_tizen>
373         Trackpoint,
374         /// <summary>
375         /// A trackball style mouse
376         /// </summary>
377         /// <since_tizen> 4 </since_tizen>
378         Trackball,
379         /// <summary>
380         /// A remote controller
381         /// </summary>
382         /// <since_tizen> 4 </since_tizen>
383         Remocon,
384         /// <summary>
385         /// A virtual keyboard
386         /// </summary>
387         /// <since_tizen> 4 </since_tizen>
388         VirtualKeyboard
389     }
390
391     /// <summary>
392     /// This specifies all the property types.<br />
393     /// Enumeration for the property types supported.
394     /// </summary>
395     /// <since_tizen> 3 </since_tizen>
396     public enum PropertyType
397     {
398         /// <summary>
399         /// No type.
400         /// </summary>
401         None,
402         /// <summary>
403         /// A boolean type.
404         /// </summary>
405         Boolean,
406         /// <summary>
407         /// A float type.
408         /// </summary>
409         Float,
410         /// <summary>
411         /// An integer type.
412         /// </summary>
413         Integer,
414         /// <summary>
415         /// A vector array of size=2 with float precision.
416         /// </summary>
417         Vector2,
418         /// <summary>
419         /// A vector array of size=3 with float precision.
420         /// </summary>
421         Vector3,
422         /// <summary>
423         /// A vector array of size=4 with float precision.
424         /// </summary>
425         Vector4,
426         /// <summary>
427         /// A 3x3 matrix.
428         /// </summary>
429         Matrix3,
430         /// <summary>
431         /// A 4x4 matrix.
432         /// </summary>
433         Matrix,
434         /// <summary>
435         /// An integer array of size=4.
436         /// </summary>
437         Rectangle,
438         /// <summary>
439         /// Either a quaternion or an axis angle rotation.
440         /// </summary>
441         Rotation,
442         /// <summary>
443         /// A string type.
444         /// </summary>
445         String,
446         /// <summary>
447         /// An array of PropertyValue.
448         /// </summary>
449         Array,
450         /// <summary>
451         /// A string key to PropertyValue mapping.
452         /// </summary>
453         Map,
454         /// <summary>
455         /// An extents type.
456         /// </summary>
457         /// <since_tizen> 4 </since_tizen>
458         Extents
459     }
460
461     /// <summary>
462     /// This specifies the property access mode types.<br />
463     /// Enumeration for the access mode for custom properties.
464     /// </summary>
465     /// <since_tizen> 3 </since_tizen>
466     public enum PropertyAccessMode
467     {
468         /// <summary>
469         /// If the property is read-only.
470         /// </summary>
471         ReadOnly,
472         /// <summary>
473         /// If the property is read or writeable.
474         /// </summary>
475         ReadWrite,
476         /// <summary>
477         /// If the property can be animated or constrained.
478         /// </summary>
479         Animatable,
480         /// <summary>
481         /// The number of access modes.
482         /// </summary>
483         AccessModeCount
484     }
485
486     /// <summary>
487     /// Types of style change. Enumeration for the StyleChange type.
488     /// </summary>
489     /// <since_tizen> 3 </since_tizen>
490     public enum StyleChangeType
491     {
492         /// <summary>
493         /// Denotes that the default font has changed.
494         /// </summary>
495         DefaultFontChange,
496         /// <summary>
497         /// Denotes that the default font size has changed.
498         /// </summary>
499         DefaultFontSizeChange,
500         /// <summary>
501         /// Denotes that the theme has changed.
502         /// </summary>
503         ThemeChange
504     }
505
506     /// <summary>
507     /// Enumeration for horizontal alignment types.
508     /// </summary>
509     /// <since_tizen> 3 </since_tizen>
510     public enum HorizontalAlignmentType
511     {
512         /// <summary>
513         /// Align horizontally left.
514         /// </summary>
515         Left,
516         /// <summary>
517         /// Align horizontally center.
518         /// </summary>
519         Center,
520         /// <summary>
521         /// Align horizontally right.
522         /// </summary>
523         Right
524     }
525
526     /// <summary>
527     /// Enumeration for vertical alignment types.
528     /// </summary>
529     /// <since_tizen> 3 </since_tizen>
530     public enum VerticalAlignmentType
531     {
532         /// <summary>
533         /// Align vertically top.
534         /// </summary>
535         Top,
536         /// <summary>
537         /// Align vertically center.
538         /// </summary>
539         Center,
540         /// <summary>
541         /// Align vertically bottom.
542         /// </summary>
543         Bottom
544     }
545
546     /// <summary>
547     /// Enumeration for point state type.
548     /// </summary>
549     /// <since_tizen> 3 </since_tizen>
550     public enum PointStateType
551     {
552         /// <summary>
553         /// Touch or hover started.
554         /// </summary>
555         Started,
556         /// <summary>
557         /// Touch or hover finished.
558         /// </summary>
559         Finished,
560         /// <summary>
561         /// Screen touched.
562         /// </summary>
563         Down = Started,
564         /// <summary>
565         /// Touch stopped.
566         /// </summary>
567         Up = Finished,
568         /// <summary>
569         /// Finger dragged or hovered.
570         /// </summary>
571         Motion,
572         /// <summary>
573         /// Leave the boundary of an actor.
574         /// </summary>
575         Leave,
576         /// <summary>
577         /// No change from last event. <br />
578         /// Useful when a multi-point event occurs where all points are sent, but indicates that this particular point has not changed since the last time.
579         /// </summary>
580         Stationary,
581         /// <summary>
582         /// A system event has occurred which has interrupted the touch or hover event sequence.
583         /// </summary>
584         Interrupted
585     }
586
587     /// <summary>
588     /// Enumeration for the text horizontal aligning.
589     /// </summary>
590     /// <since_tizen> 3 </since_tizen>
591     public enum HorizontalAlignment
592     {
593         /// <summary>
594         /// Texts place at the begin of horizontal direction.
595         /// </summary>
596         Begin,
597         /// <summary>
598         /// Texts place at the center of horizontal direction.
599         /// </summary>
600         Center,
601         /// <summary>
602         /// Texts place at the end of horizontal direction.
603         /// </summary>
604         End
605     }
606
607     /// <summary>
608     /// Enumeration for the text horizontal aligning.
609     /// </summary>
610     /// <since_tizen> 3 </since_tizen>
611     public enum VerticalAlignment
612     {
613         /// <summary>
614         /// Texts place at the top of vertical direction.
615         /// </summary>
616         Top,
617         /// <summary>
618         /// Texts place at the center of vertical direction.
619         /// </summary>
620         Center,
621         /// <summary>
622         /// Texts place at the bottom of vertical direction.
623         /// </summary>
624         Bottom
625     }
626
627     /// <summary>
628     /// This specifies wrap mode types.<br />
629     /// WrapModeU and WrapModeV separately decide how the texture should be sampled when the u and v coordinate exceeds the range of 0.0 to 1.0.
630     /// </summary>
631     /// <since_tizen> 3 </since_tizen>
632     public enum WrapModeType
633     {
634         /// <summary>
635         /// The default value.
636         /// </summary>
637         Default = 0,
638         /// <summary>
639         /// Clamp to edge.
640         /// </summary>
641         ClampToEdge,
642         /// <summary>
643         /// Repeat.
644         /// </summary>
645         Repeat,
646         /// <summary>
647         /// Mirrored repeat.
648         /// </summary>
649         MirroredRepeat
650     }
651
652     /// <summary>
653     /// The type of coordinate system for certain attributes of the points in a gradient.
654     /// </summary>
655     /// <since_tizen> 3 </since_tizen>
656     public enum GradientVisualUnitsType
657     {
658         /// <summary>
659         /// Uses the normals for the start, end, and center points, i.e., top-left is (-0.5, -0.5) and bottom-right is (0.5, 0.5).
660         /// </summary>
661         ObjectBoundingBox,
662         /// <summary>
663         /// Uses the user coordinates for the start, end, and center points, i.e., in a 200 by 200 control, top-left is (0, 0) and bottom-right is (200, 200).
664         /// </summary>
665         UserSpace
666     }
667
668     /// <summary>
669     /// This specifies SpreadMethod types.<br />
670     /// SpreadMethod defines what happens if the gradient starts or ends inside the bounds of the target rectangle.<br />
671     /// </summary>
672     /// <since_tizen> 3 </since_tizen>
673     public enum GradientVisualSpreadMethodType
674     {
675         /// <summary>
676         /// Uses the terminal colors of the gradient to fill the remainder of the quad.
677         /// </summary>
678         Pad,
679         /// <summary>
680         /// Reflects the gradient pattern start-to-end, end-to-start, start-to-end, etc. until the quad is filled.
681         /// </summary>
682         Reflect,
683         /// <summary>
684         /// Repeats the gradient pattern start-to-end, start-to-end, start-to-end, etc. until the quad is filled.
685         /// </summary>
686         Repeat
687     }
688
689     /// <summary>
690     /// The shading mode used by the mesh visual.
691     /// </summary>
692     /// <since_tizen> 3 </since_tizen>
693     public enum MeshVisualShadingModeValue
694     {
695         /// <summary>
696         /// *Simplest*. One color that is lit by ambient and diffuse lighting.
697         /// </summary>
698         TexturelessWithDiffuseLighting,
699         /// <summary>
700         /// Uses only the visual image textures provided with specular lighting in addition to ambient and diffuse lighting.
701         /// </summary>
702         TexturedWithSpecularLighting,
703         /// <summary>
704         /// Uses all textures provided including gloss, normal, and texture map along with specular, ambient, and diffuse lighting.
705         /// </summary>
706         TexturedWithDetailedSpecularLighting
707     }
708
709     /// <summary>
710     /// The primitive shape to render as a primitive visual.
711     /// </summary>
712     /// <since_tizen> 3 </since_tizen>
713     public enum PrimitiveVisualShapeType
714     {
715         /// <summary>
716         /// A perfectly round geometrical object in the three-dimensional space.
717         /// </summary>
718         Sphere,
719         /// <summary>
720         /// The area bound between two circles, i.e., a cone with the tip removed.
721         /// </summary>
722         ConicalFrustrum,
723         /// <summary>
724         /// Equivalent to a conical frustrum with the top radius of zero.
725         /// </summary>Equivalent to a conical frustrum with the top radius of zero.
726         Cone,
727         /// <summary>
728         /// Equivalent to a conical frustrum with the top radius of zero.
729         /// </summary>
730         Cylinder,
731         /// <summary>
732         /// Equivalent to a conical frustrum with equal radii for the top and bottom circles.
733         /// </summary>
734         Cube,
735         /// <summary>
736         /// Equivalent to a bevelled cube with a bevel percentage of zero.
737         /// </summary>
738         Octahedron,
739         /// <summary>
740         /// Equivalent to a bevelled cube with a bevel percentage of one.
741         /// </summary>
742         BevelledCube
743     }
744
745     /// <summary>
746     /// This specifies fitting mode types. Fitting options, used when resizing images to fit desired dimensions.<br />
747     /// A fitting mode controls the region of a loaded image to be mapped to the desired image rectangle.<br />
748     /// All fitting modes preserve the aspect ratio of the image contents.<br />
749     /// </summary>
750     /// <since_tizen> 3 </since_tizen>
751     public enum FittingModeType
752     {
753         /// <summary>
754         /// Full-screen image display: Limit loaded image resolution to device resolution using the ShrinkToFit mode.
755         /// </summary>
756         ShrinkToFit,
757         /// <summary>
758         /// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the ScaleToFill mode.
759         /// </summary>
760         ScaleToFill,
761         /// <summary>
762         /// Image columns: Limit loaded image resolution to column width using the FitWidth mode.
763         /// </summary>
764         FitWidth,
765         /// <summary>
766         /// Image rows: Limit loaded image resolution to row height using the FitHeight mode.
767         /// </summary>
768         FitHeight
769     }
770
771     /// <summary>
772     /// This specifies sampling mode types. Filtering options are used when resizing images to sample original pixels.<br />
773     /// A SamplingMode controls how pixels in an input image are sampled and combined to generate each pixel of a destination image during scaling.<br />
774     /// NoFilter and Box modes do not guarantee that the output pixel array exactly matches the rectangle specified by the desired dimensions and the FittingMode,<br />
775     /// but all other filter modes do if the desired dimensions are not more than the raw dimensions of the input image file.<br />
776     /// </summary>
777     /// <since_tizen> 3 </since_tizen>
778     public enum SamplingModeType
779     {
780         /// <summary>
781         /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size. <br />
782         /// This is the default.
783         /// </summary>
784         Box,
785         /// <summary>
786         /// For each output pixel, read one input pixel.
787         /// </summary>
788         Nearest,
789         /// <summary>
790         /// For each output pixel, read a quad of four input pixels and write a weighted average of them.
791         /// </summary>
792         Linear,
793         /// <summary>
794         /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size, <br />
795         /// then for each output pixel, read one pixel from the last level of box filtering.<br />
796         /// </summary>
797         BoxThenNearest,
798         /// <summary>
799         /// Iteratively box filter to almost the right size, then for each output pixel, read four pixels from the last level of box filtering and write their weighted average.
800         /// </summary>
801         BoxThenLinear,
802         /// <summary>
803         /// No filtering is performed. If the SCALE_TO_FILL scaling mode is enabled, the borders of the image may be trimmed to match the aspect ratio of the desired dimensions.
804         /// </summary>
805         NoFilter,
806         /// <summary>
807         /// For caching algorithms where a client strongly prefers a cache-hit to reuse a cached image.
808         /// </summary>
809         DontCare
810     }
811
812     /// <summary>
813     /// This specifies policy types that could be used by the transform for the offset or size.
814     /// </summary>
815     /// <since_tizen> 3 </since_tizen>
816     public enum VisualTransformPolicyType
817     {
818         /// <summary>
819         /// Relative to the control (percentage [0.0f to 1.0f] of the control).
820         /// </summary>
821         Relative = 0,
822         /// <summary>
823         /// Absolute value in world units.
824         /// </summary>
825         Absolute = 1
826     }
827
828     /// <summary>
829     /// This specifies all the transform property types.
830     /// </summary>
831     /// <since_tizen> 3 </since_tizen>
832     public enum VisualTransformPropertyType
833     {
834         /// <summary>
835         /// Offset of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
836         /// </summary>
837         Offset,
838         /// <summary>
839         /// Size of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
840         /// </summary>
841         Size,
842         /// <summary>
843         /// The origin of the visual within its control area.
844         /// </summary>
845         Origin,
846         /// <summary>
847         /// The anchor-point of the visual.
848         /// </summary>
849         AnchorPoint,
850         /// <summary>
851         /// Whether the x or y offset values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
852         /// </summary>
853         OffsetPolicy,
854         /// <summary>
855         /// Whether the width or the height size values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
856         /// </summary>
857         SizePolicy
858     }
859
860     /// <summary>
861     /// This specifies visual types.
862     /// </summary>
863     /// <since_tizen> 3 </since_tizen>
864     public struct Visual
865     {
866         /// <summary>
867         /// The index for the visual type.
868         /// </summary>
869         /// <since_tizen> 3 </since_tizen>
870         public enum Type
871         {
872             /// <summary>
873             /// Renders a solid color as an internal border to the control's quad.
874             /// </summary>
875             Border,
876             /// <summary>
877             /// Renders a solid color to the control's quad.
878             /// </summary>
879             Color,
880             /// <summary>
881             /// Renders a smooth transition of colors to the control's quad.
882             /// </summary>
883             Gradient,
884             /// <summary>
885             /// Renders an image into the control's quad.
886             /// </summary>
887             Image,
888             /// <summary>
889             /// Renders a mesh using an "obj" file, optionally with textures provided by an "mtl" file.
890             /// </summary>
891             Mesh,
892             /// <summary>
893             /// Renders a simple 3D shape, such as a cube or a sphere.
894             /// </summary>
895             Primitive,
896             /// <summary>
897             /// Renders a simple wire-frame outlining a quad.
898             /// </summary>
899             Wireframe,
900             /// <summary>
901             /// Renders text.
902             /// </summary>
903             Text,
904             /// <summary>
905             /// Renders an n-patch image.
906             /// </summary>
907             NPatch,
908             /// <summary>
909             /// Renders an SVG image.
910             /// </summary>
911             SVG,
912             /// <summary>
913             /// Renders a animated image (animated GIF).
914             /// </summary>
915             AnimatedImage
916         }
917
918         /// <summary>
919         /// This specifies visual properties.
920         /// </summary>
921         /// <since_tizen> 3 </since_tizen>
922         public struct Property
923         {
924             /// <summary>
925             /// Type.
926             /// </summary>
927             /// <since_tizen> 3 </since_tizen>
928             public static readonly int Type = NDalic.VISUAL_PROPERTY_TYPE;
929             /// <summary>
930             /// Shader.
931             /// </summary>
932             /// <since_tizen> 3 </since_tizen>
933             public static readonly int Shader = NDalic.VISUAL_PROPERTY_SHADER;
934             /// <summary>
935             /// Transform.
936             /// </summary>
937             /// <since_tizen> 3 </since_tizen>
938             public static readonly int Transform = NDalic.VISUAL_PROPERTY_TRANSFORM;
939             /// <summary>
940             /// PremultipliedAlpha.
941             /// </summary>
942             /// <since_tizen> 3 </since_tizen>
943             public static readonly int PremultipliedAlpha = NDalic.VISUAL_PROPERTY_PREMULTIPLIED_ALPHA;
944             /// <summary>
945             /// MixColor.
946             /// </summary>
947             /// <since_tizen> 3 </since_tizen>
948             public static readonly int MixColor = NDalic.VISUAL_PROPERTY_MIX_COLOR;
949             /// <summary>
950             /// Opacity.
951             /// </summary>
952             /// <since_tizen> 3 </since_tizen>
953             public static readonly int Opacity = NDalic.VISUAL_PROPERTY_MIX_COLOR + 1;
954         }
955
956         /// <summary>
957         /// This specifies shader properties.
958         /// </summary>
959         /// <since_tizen> 3 </since_tizen>
960         public struct ShaderProperty
961         {
962             /// <summary>
963             /// Vertex shader code
964             /// </summary>
965             /// <since_tizen> 3 </since_tizen>
966             public static readonly int VertexShader = NDalic.VISUAL_SHADER_VERTEX;
967             /// <summary>
968             /// Fragment shader code
969             /// </summary>
970             /// <since_tizen> 3 </since_tizen>
971             public static readonly int FragmentShader = NDalic.VISUAL_SHADER_FRAGMENT;
972             /// <summary>
973             /// How to subdivide the grid along X
974             /// </summary>
975             /// <since_tizen> 3 </since_tizen>
976             public static readonly int ShaderSubdivideGridX = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_X;
977             /// <summary>
978             /// How to subdivide the grid along Y
979             /// </summary>
980             /// <since_tizen> 3 </since_tizen>
981             public static readonly int ShaderSubdivideGridY = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_Y;
982             /// <summary>
983             /// Bitmask of hints
984             /// </summary>
985             /// <since_tizen> 3 </since_tizen>
986             public static readonly int ShaderHints = NDalic.VISUAL_SHADER_HINTS;
987         }
988
989         /// <summary>
990         /// This specifies visaul align types.
991         /// </summary>
992         /// <since_tizen> 3 </since_tizen>
993         public enum AlignType
994         {
995             /// <summary>
996             /// TopBegin
997             /// </summary>
998             /// <since_tizen> 3 </since_tizen>
999             TopBegin = 0,
1000             /// <summary>
1001             /// TopCenter
1002             /// </summary>
1003             /// <since_tizen> 3 </since_tizen>
1004             TopCenter,
1005             /// <summary>
1006             /// TopEnd
1007             /// </summary>
1008             /// <since_tizen> 3 </since_tizen>
1009             TopEnd,
1010             /// <summary>
1011             /// CenterBegin
1012             /// </summary>
1013             /// <since_tizen> 3 </since_tizen>
1014             CenterBegin,
1015             /// <summary>
1016             /// Center
1017             /// </summary>
1018             /// <since_tizen> 3 </since_tizen>
1019             Center,
1020             /// <summary>
1021             /// CenterEnd
1022             /// </summary>
1023             /// <since_tizen> 3 </since_tizen>
1024             CenterEnd,
1025             /// <summary>
1026             /// BottomBegin
1027             /// </summary>
1028             /// <since_tizen> 3 </since_tizen>
1029             BottomBegin,
1030             /// <summary>
1031             /// BottomCenter
1032             /// </summary>
1033             /// <since_tizen> 3 </since_tizen>
1034             BottomCenter,
1035             /// <summary>
1036             /// BottomEnd
1037             /// </summary>
1038             /// <since_tizen> 3 </since_tizen>
1039             BottomEnd
1040         }
1041     }
1042
1043     /// <summary>
1044     /// This specifies properties of the BorderVisual.
1045     /// </summary>
1046     /// <since_tizen> 3 </since_tizen>
1047     public struct BorderVisualProperty
1048     {
1049         /// <summary>
1050         /// The color of the border.
1051         /// </summary>
1052         /// <since_tizen> 3 </since_tizen>
1053         public static readonly int Color = NDalic.BORDER_VISUAL_COLOR;
1054         /// <summary>
1055         /// The width of the border (in pixels).
1056         /// </summary>
1057         /// <since_tizen> 3 </since_tizen>
1058         public static readonly int Size = NDalic.BORDER_VISUAL_SIZE;
1059         /// <summary>
1060         /// Whether anti-aliasing of the border is required.
1061         /// </summary>
1062         /// <since_tizen> 3 </since_tizen>
1063         public static readonly int AntiAliasing = NDalic.BORDER_VISUAL_ANTI_ALIASING;
1064     }
1065
1066     /// <summary>
1067     /// This specifies properties of the ColorVisual.
1068     /// </summary>
1069     /// <since_tizen> 3 </since_tizen>
1070     public struct ColorVisualProperty
1071     {
1072         /// <summary>
1073         /// The solid color required.
1074         /// </summary>
1075         /// <since_tizen> 3 </since_tizen>
1076         public static readonly int MixColor = NDalic.COLOR_VISUAL_MIX_COLOR;
1077     }
1078
1079     /// <summary>
1080     /// This specifies properties of the GradientVisual.
1081     /// </summary>
1082     /// <since_tizen> 3 </since_tizen>
1083     public struct GradientVisualProperty
1084     {
1085         /// <summary>
1086         /// The start position of a linear gradient.
1087         /// </summary>
1088         /// <since_tizen> 3 </since_tizen>
1089         public static readonly int StartPosition = NDalic.GRADIENT_VISUAL_START_POSITION;
1090         /// <summary>
1091         /// The end position of a linear gradient.
1092         /// </summary>
1093         /// <since_tizen> 3 </since_tizen>
1094         public static readonly int EndPosition = NDalic.GRADIENT_VISUAL_END_POSITION;
1095         /// <summary>
1096         /// The center point of a radial gradient.
1097         /// </summary>
1098         /// <since_tizen> 3 </since_tizen>
1099         public static readonly int Center = NDalic.GRADIENT_VISUAL_CENTER;
1100         /// <summary>
1101         /// The size of the radius of a radial gradient.
1102         /// </summary>
1103         /// <since_tizen> 3 </since_tizen>
1104         public static readonly int Radius = NDalic.GRADIENT_VISUAL_RADIUS;
1105         /// <summary>
1106         /// All the stop offsets.
1107         /// </summary>
1108         /// <since_tizen> 3 </since_tizen>
1109         public static readonly int StopOffset = NDalic.GRADIENT_VISUAL_STOP_OFFSET;
1110         /// <summary>
1111         /// The color at the stop offsets.
1112         /// </summary>
1113         /// <since_tizen> 3 </since_tizen>
1114         public static readonly int StopColor = NDalic.GRADIENT_VISUAL_STOP_COLOR;
1115         /// <summary>
1116         /// Defines the coordinate system for certain attributes of the points in a gradient.
1117         /// </summary>
1118         /// <since_tizen> 3 </since_tizen>
1119         public static readonly int Units = NDalic.GRADIENT_VISUAL_UNITS;
1120         /// <summary>
1121         /// Indicates what happens if the gradient starts or ends inside the bounds of the target rectangle.
1122         /// </summary>
1123         /// <since_tizen> 3 </since_tizen>
1124         public static readonly int SpreadMethod = NDalic.GRADIENT_VISUAL_SPREAD_METHOD;
1125     }
1126
1127     /// <summary>
1128     /// This specifies properties of the ImageVisual.
1129     /// </summary>
1130     /// <since_tizen> 3 </since_tizen>
1131     public struct ImageVisualProperty
1132     {
1133         /// <summary>
1134         /// The URL of the image.
1135         /// </summary>
1136         /// <since_tizen> 3 </since_tizen>
1137         public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
1138         /// <summary>
1139         /// The URL of the alpha mask image.
1140         /// </summary>
1141         /// <since_tizen> 3 </since_tizen>
1142         public static readonly int AlphaMaskURL = NDalic.IMAGE_VISUAL_ALPHA_MASK_URL;
1143         /// <summary>
1144         /// Fitting options, used when resizing images to fit desired dimensions.
1145         /// </summary>
1146         /// <since_tizen> 3 </since_tizen>
1147         public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
1148         /// <summary>
1149         /// Filtering options, used when resizing images to sample original pixels.
1150         /// </summary>
1151         /// <since_tizen> 3 </since_tizen>
1152         public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
1153         /// <summary>
1154         /// The desired image width.
1155         /// </summary>
1156         /// <since_tizen> 3 </since_tizen>
1157         public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
1158         /// <summary>
1159         /// The desired image height.
1160         /// </summary>
1161         /// <since_tizen> 3 </since_tizen>
1162         public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
1163         /// <summary>
1164         /// Whether to load the image synchronously.
1165         /// </summary>
1166         /// <since_tizen> 3 </since_tizen>
1167         public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
1168         /// <summary>
1169         /// If true, only draws the borders.
1170         /// </summary>
1171         /// <since_tizen> 3 </since_tizen>
1172         public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
1173         /// <summary>
1174         /// The image area to be displayed.
1175         /// </summary>
1176         /// <since_tizen> 3 </since_tizen>
1177         public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
1178         /// <summary>
1179         /// The wrap mode for u coordinate.
1180         /// </summary>
1181         /// <since_tizen> 3 </since_tizen>
1182         public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
1183         /// <summary>
1184         /// The wrap mode for v coordinate.
1185         /// </summary>
1186         /// <since_tizen> 3 </since_tizen>
1187         public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
1188         /// <summary>
1189         /// The border of the image.
1190         /// </summary>
1191         /// <since_tizen> 3 </since_tizen>
1192         public static readonly int Border = NDalic.IMAGE_VISUAL_BORDER;
1193         /// <summary>
1194         /// The scale factor to apply to the content image before masking.
1195         /// </summary>
1196         /// <since_tizen> 4 </since_tizen>
1197         public static readonly int MaskContentScale = NDalic.IMAGE_VISUAL_MASK_CONTENT_SCALE;
1198         /// <summary>
1199         /// Whether to crop image to mask or scale mask to fit image
1200         /// </summary>
1201         /// <since_tizen> 4 </since_tizen>
1202         public static readonly int CropToMask = NDalic.IMAGE_VISUAL_CROP_TO_MASK;
1203         /// <summary>
1204         /// Defines the batch size for pre-loading images in the AnimatedImageVisual
1205         /// </summary>
1206         /// <since_tizen> 4 </since_tizen>
1207         public static readonly int BatchSize = NDalic.IMAGE_VISUAL_BATCH_SIZE;
1208         /// <summary>
1209         /// Defines the cache size for loading images in the AnimatedImageVisual
1210         /// </summary>
1211         /// <since_tizen> 4 </since_tizen>
1212         public static readonly int CacheSize = NDalic.IMAGE_VISUAL_CACHE_SIZE;
1213         /// <summary>
1214         /// The number of milliseconds between each frame in the AnimatedImageVisual
1215         /// </summary>
1216         /// <since_tizen> 4 </since_tizen>
1217         public static readonly int FrameDelay = NDalic.IMAGE_VISUAL_FRAME_DELAY;
1218
1219     }
1220
1221     /// <summary>
1222     /// This specifies properties of the MeshVisual.
1223     /// </summary>
1224     /// <since_tizen> 3 </since_tizen>
1225     public struct MeshVisualProperty
1226     {
1227         /// <summary>
1228         /// The location of the ".obj" file.
1229         /// </summary>
1230         /// <since_tizen> 3 </since_tizen>
1231         public static readonly int ObjectURL = NDalic.MESH_VISUAL_OBJECT_URL;
1232         /// <summary>
1233         /// The location of the ".mtl" file.
1234         /// </summary>
1235         /// <since_tizen> 3 </since_tizen>
1236         public static readonly int MaterialtURL = NDalic.MESH_VISUAL_MATERIAL_URL;
1237         /// <summary>
1238         /// Path to the directory the textures (including gloss and normal) are stored in.
1239         /// </summary>
1240         /// <since_tizen> 3 </since_tizen>
1241         public static readonly int TexturesPath = NDalic.MESH_VISUAL_TEXTURES_PATH;
1242         /// <summary>
1243         /// Sets the type of shading mode that the mesh will use.
1244         /// </summary>
1245         /// <since_tizen> 3 </since_tizen>
1246         public static readonly int ShadingMode = NDalic.MESH_VISUAL_SHADING_MODE;
1247         /// <summary>
1248         /// Whether to use mipmaps for textures or not.
1249         /// </summary>
1250         /// <since_tizen> 3 </since_tizen>
1251         public static readonly int UseMipmapping = NDalic.MESH_VISUAL_USE_MIPMAPPING;
1252         /// <summary>
1253         /// Whether to average normals at each point to smooth textures or not.
1254         /// </summary>
1255         /// <since_tizen> 3 </since_tizen>
1256         public static readonly int UseSoftNormals = NDalic.MESH_VISUAL_USE_SOFT_NORMALS;
1257         /// <summary>
1258         /// The position, in stage space, of the point light that applies lighting to the model.
1259         /// </summary>
1260         /// <since_tizen> 3 </since_tizen>
1261         public static readonly int LightPosition = NDalic.MESH_VISUAL_LIGHT_POSITION;
1262     }
1263
1264     /// <summary>
1265     /// This specifies properties of the PrimitiveVisual.
1266     /// </summary>
1267     /// <since_tizen> 3 </since_tizen>
1268     public struct PrimitiveVisualProperty
1269     {
1270         /// <summary>
1271         /// The specific shape to render.
1272         /// </summary>
1273         /// <since_tizen> 3 </since_tizen>
1274         public static readonly int Shape = NDalic.PRIMITIVE_VISUAL_SHAPE;
1275         /// <summary>
1276         /// The color of the shape.
1277         /// </summary>
1278         /// <since_tizen> 3 </since_tizen>
1279         public static readonly int MixColor = NDalic.PRIMITIVE_VISUAL_MIX_COLOR;
1280         /// <summary>
1281         /// The number of slices as you go around the shape.
1282         /// </summary>
1283         /// <since_tizen> 3 </since_tizen>
1284         public static readonly int Slices = NDalic.PRIMITIVE_VISUAL_SLICES;
1285         /// <summary>
1286         /// The number of stacks as you go down the shape.
1287         /// </summary>
1288         /// <since_tizen> 3 </since_tizen>
1289         public static readonly int Stacks = NDalic.PRIMITIVE_VISUAL_STACKS;
1290         /// <summary>
1291         /// The scale of the radius of the top circle of a conical frustrum.
1292         /// </summary>
1293         /// <since_tizen> 3 </since_tizen>
1294         public static readonly int ScaleTopRadius = NDalic.PRIMITIVE_VISUAL_SCALE_TOP_RADIUS;
1295         /// <summary>
1296         /// The scale of the radius of the bottom circle of a conical frustrum.
1297         /// </summary>
1298         /// <since_tizen> 3 </since_tizen>
1299         public static readonly int ScaleBottomRadius = NDalic.PRIMITIVE_VISUAL_SCALE_BOTTOM_RADIUS;
1300         /// <summary>
1301         /// The scale of the height of a conic.
1302         /// </summary>
1303         /// <since_tizen> 3 </since_tizen>
1304         public static readonly int ScaleHeight = NDalic.PRIMITIVE_VISUAL_SCALE_HEIGHT;
1305         /// <summary>
1306         /// The scale of the radius of a cylinder.
1307         /// </summary>
1308         /// <since_tizen> 3 </since_tizen>
1309         public static readonly int ScaleRadius = NDalic.PRIMITIVE_VISUAL_SCALE_RADIUS;
1310         /// <summary>
1311         /// The dimensions of a cuboid. Scales in the same fashion as a 9-patch image.
1312         /// </summary>
1313         /// <since_tizen> 3 </since_tizen>
1314         public static readonly int ScaleDimensions = NDalic.PRIMITIVE_VISUAL_SCALE_DIMENSIONS;
1315         /// <summary>
1316         /// Determines how bevelled the cuboid should be, based off the smallest dimension.
1317         /// </summary>
1318         /// <since_tizen> 3 </since_tizen>
1319         public static readonly int BevelPercentage = NDalic.PRIMITIVE_VISUAL_BEVEL_PERCENTAGE;
1320         /// <summary>
1321         /// Defines how smooth the bevelled edges should be.
1322         /// </summary>
1323         /// <since_tizen> 3 </since_tizen>
1324         public static readonly int BevelSmoothness = NDalic.PRIMITIVE_VISUAL_BEVEL_SMOOTHNESS;
1325         /// <summary>
1326         /// The position, in stage space, of the point light that applies lighting to the model.
1327         /// </summary>
1328         /// <since_tizen> 3 </since_tizen>
1329         public static readonly int LightPosition = NDalic.PRIMITIVE_VISUAL_LIGHT_POSITION;
1330     }
1331
1332     /// <summary>
1333     /// This specifies properties of the TextVisual.
1334     /// </summary>
1335     /// <since_tizen> 3 </since_tizen>
1336     public struct TextVisualProperty
1337     {
1338         /// <summary>
1339         /// The text to display in UTF-8 format.
1340         /// </summary>
1341         /// <since_tizen> 3 </since_tizen>
1342         public static readonly int Text = NDalic.TEXT_VISUAL_TEXT;
1343         /// <summary>
1344         /// The requested font family to use.
1345         /// </summary>
1346         /// <since_tizen> 3 </since_tizen>
1347         public static readonly int FontFamily = NDalic.TEXT_VISUAL_FONT_FAMILY;
1348         /// <summary>
1349         /// The requested font style to use.
1350         /// </summary>
1351         /// <since_tizen> 3 </since_tizen>
1352         public static readonly int FontStyle = NDalic.TEXT_VISUAL_FONT_STYLE;
1353         /// <summary>
1354         /// The size of font in points.
1355         /// </summary>
1356         /// <since_tizen> 3 </since_tizen>
1357         public static readonly int PointSize = NDalic.TEXT_VISUAL_POINT_SIZE;
1358         /// <summary>
1359         /// The single-line or multi-line layout option.
1360         /// </summary>
1361         /// <since_tizen> 3 </since_tizen>
1362         public static readonly int MultiLine = NDalic.TEXT_VISUAL_MULTI_LINE;
1363         /// <summary>
1364         /// The line horizontal alignment.
1365         /// </summary>
1366         /// <since_tizen> 3 </since_tizen>
1367         public static readonly int HorizontalAlignment = NDalic.TEXT_VISUAL_HORIZONTAL_ALIGNMENT;
1368         /// <summary>
1369         /// The line vertical alignment.
1370         /// </summary>
1371         /// <since_tizen> 3 </since_tizen>
1372         public static readonly int VerticalAlignment = NDalic.TEXT_VISUAL_VERTICAL_ALIGNMENT;
1373         /// <summary>
1374         /// The color of the text.
1375         /// </summary>
1376         /// <since_tizen> 3 </since_tizen>
1377         public static readonly int TextColor = NDalic.TEXT_VISUAL_TEXT_COLOR;
1378         /// <summary>
1379         /// Whether the mark-up processing is enabled.
1380         /// </summary>
1381         /// <since_tizen> 3 </since_tizen>
1382         public static readonly int EnableMarkup = NDalic.TEXT_VISUAL_ENABLE_MARKUP;
1383     }
1384
1385     /// <summary>
1386     /// This specifies properties of the NpatchImageVisual.
1387     /// </summary>
1388     /// <since_tizen> 3 </since_tizen>
1389     public struct NpatchImageVisualProperty
1390     {
1391         /// <summary>
1392         /// The URL of the image.
1393         /// </summary>
1394         /// <since_tizen> 3 </since_tizen>
1395         public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
1396         /// <summary>
1397         /// Fitting options, used when resizing images to fit desired dimensions.
1398         /// </summary>
1399         /// <since_tizen> 3 </since_tizen>
1400         public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
1401         /// <summary>
1402         /// Filtering options, used when resizing images to sample original pixels.
1403         /// </summary>
1404         /// <since_tizen> 3 </since_tizen>
1405         public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
1406         /// <summary>
1407         /// The desired image width.
1408         /// </summary>
1409         /// <since_tizen> 3 </since_tizen>
1410         public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
1411         /// <summary>
1412         /// The desired image height.
1413         /// </summary>
1414         /// <since_tizen> 3 </since_tizen>
1415         public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
1416         /// <summary>
1417         /// Whether to load the image synchronously.
1418         /// </summary>
1419         /// <since_tizen> 3 </since_tizen>
1420         public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
1421         /// <summary>
1422         /// If true, only draws the borders.
1423         /// </summary>
1424         /// <since_tizen> 3 </since_tizen>
1425         public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
1426         /// <summary>
1427         /// The image area to be displayed.
1428         /// </summary>
1429         /// <since_tizen> 3 </since_tizen>
1430         public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
1431         /// <summary>
1432         /// The wrap mode for u coordinate.
1433         /// </summary>
1434         /// <since_tizen> 3 </since_tizen>
1435         public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
1436         /// <summary>
1437         /// The wrap mode for v coordinate.
1438         /// </summary>
1439         /// <since_tizen> 3 </since_tizen>
1440         public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
1441         /// <summary>
1442         /// The border of the image.
1443         /// </summary>
1444         /// <since_tizen> 3 </since_tizen>
1445         public static readonly int Border = NDalic.IMAGE_VISUAL_WRAP_MODE_V + 1;
1446     }
1447
1448     /// <summary>
1449     /// The HiddenInput property.
1450     /// </summary>
1451     /// <since_tizen> 3 </since_tizen>
1452     public struct HiddenInputProperty
1453     {
1454         /// <summary>
1455         /// The mode for input text display.
1456         /// </summary>
1457         /// <since_tizen> 3 </since_tizen>
1458         public static readonly int Mode = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_MODE_get();
1459         /// <summary>
1460         /// All input characters are substituted by this character.
1461         /// </summary>
1462         /// <since_tizen> 3 </since_tizen>
1463         public static readonly int SubstituteCharacter = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SUBSTITUTE_CHARACTER_get();
1464         /// <summary>
1465         /// Length of text to show or hide, available when HIDE_COUNT/SHOW_COUNT mode is used.
1466         /// </summary>
1467         /// <since_tizen> 3 </since_tizen>
1468         public static readonly int SubstituteCount = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SUBSTITUTE_COUNT_get();
1469         /// <summary>
1470         /// Hide last character after this duration, available when SHOW_LAST_CHARACTER mode.
1471         /// </summary>
1472         /// <since_tizen> 4 </since_tizen>
1473         public static readonly int ShowLastCharacterDuration = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SHOW_LAST_CHARACTER_DURATION_get();
1474     }
1475
1476     /// <summary>
1477     /// The type for HiddenInput mode.
1478     /// </summary>
1479     /// <since_tizen> 3 </since_tizen>
1480     public enum HiddenInputModeType
1481     {
1482         /// <summary>
1483         /// Don't hide text.
1484         /// </summary>
1485         HideNone,
1486         /// <summary>
1487         /// Hide all the input text.
1488         /// </summary>
1489         HideAll,
1490         /// <summary>
1491         /// Hide n characters from start.
1492         /// </summary>
1493         HideCount,
1494         /// <summary>
1495         /// Show n characters from start.
1496         /// </summary>
1497         ShowCount,
1498         /// <summary>
1499         /// Show last character for the duration(use ShowLastCharacterDuration property to modify duration).
1500         /// </summary>
1501         ShowLastCharacter
1502     }
1503
1504     /// <summary>
1505     /// ParentOrigin constants.
1506     /// </summary>
1507     /// <since_tizen> 3 </since_tizen>
1508     public struct ParentOrigin
1509     {
1510         /// <summary>
1511         /// Top
1512         /// </summary>
1513         /// <since_tizen> 3 </since_tizen>
1514         public static float Top
1515         {
1516             get
1517             {
1518                 float ret = NDalicPINVOKE.ParentOriginTop_get();
1519                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1520                 return ret;
1521             }
1522         }
1523
1524         /// <summary>
1525         /// Bottom
1526         /// </summary>
1527         /// <since_tizen> 3 </since_tizen>
1528         public static float Bottom
1529         {
1530             get
1531             {
1532                 float ret = NDalicPINVOKE.ParentOriginBottom_get();
1533                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1534                 return ret;
1535             }
1536         }
1537
1538         /// <summary>
1539         /// Left
1540         /// </summary>
1541         /// <since_tizen> 3 </since_tizen>
1542         public static float Left
1543         {
1544             get
1545             {
1546                 float ret = NDalicPINVOKE.ParentOriginLeft_get();
1547                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1548                 return ret;
1549             }
1550         }
1551
1552         /// <summary>
1553         /// Right
1554         /// </summary>
1555         /// <since_tizen> 3 </since_tizen>
1556         public static float Right
1557         {
1558             get
1559             {
1560                 float ret = NDalicPINVOKE.ParentOriginRight_get();
1561                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1562                 return ret;
1563             }
1564         }
1565
1566         /// <summary>
1567         /// Middle
1568         /// </summary>
1569         /// <since_tizen> 3 </since_tizen>
1570         public static float Middle
1571         {
1572             get
1573             {
1574                 float ret = NDalicPINVOKE.ParentOriginMiddle_get();
1575                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1576                 return ret;
1577             }
1578         }
1579
1580         /// <summary>
1581         /// TopLeft
1582         /// </summary>
1583         /// <since_tizen> 3 </since_tizen>
1584         public static Position TopLeft
1585         {
1586             get
1587             {
1588                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopLeft_get();
1589                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1590                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1591                 return ret;
1592             }
1593         }
1594
1595         /// <summary>
1596         /// TopCenter
1597         /// </summary>
1598         /// <since_tizen> 3 </since_tizen>
1599         public static Position TopCenter
1600         {
1601             get
1602             {
1603                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopCenter_get();
1604                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1605                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1606                 return ret;
1607             }
1608         }
1609
1610         /// <summary>
1611         /// TopRight
1612         /// </summary>
1613         /// <since_tizen> 3 </since_tizen>
1614         public static Position TopRight
1615         {
1616             get
1617             {
1618                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopRight_get();
1619                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1620                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1621                 return ret;
1622             }
1623         }
1624
1625         /// <summary>
1626         /// CenterLeft
1627         /// </summary>
1628         /// <since_tizen> 3 </since_tizen>
1629         public static Position CenterLeft
1630         {
1631             get
1632             {
1633                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterLeft_get();
1634                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1635                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1636                 return ret;
1637             }
1638         }
1639
1640         /// <summary>
1641         /// Center
1642         /// </summary>
1643         /// <since_tizen> 3 </since_tizen>
1644         public static Position Center
1645         {
1646             get
1647             {
1648                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenter_get();
1649                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1650                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1651                 return ret;
1652             }
1653         }
1654
1655         /// <summary>
1656         /// CenterRight
1657         /// </summary>
1658         /// <since_tizen> 3 </since_tizen>
1659         public static Position CenterRight
1660         {
1661             get
1662             {
1663                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterRight_get();
1664                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1665                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1666                 return ret;
1667             }
1668         }
1669
1670         /// <summary>
1671         /// BottomLeft
1672         /// </summary>
1673         /// <since_tizen> 3 </since_tizen>
1674         public static Position BottomLeft
1675         {
1676             get
1677             {
1678                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomLeft_get();
1679                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1680                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1681                 return ret;
1682             }
1683         }
1684
1685         /// <summary>
1686         /// BottomCenter
1687         /// </summary>
1688         /// <since_tizen> 3 </since_tizen>
1689         public static Position BottomCenter
1690         {
1691             get
1692             {
1693                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomCenter_get();
1694                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1695                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1696                 return ret;
1697             }
1698         }
1699
1700         /// <summary>
1701         /// BottomRight
1702         /// </summary>
1703         /// <since_tizen> 3 </since_tizen>
1704         public static Position BottomRight
1705         {
1706             get
1707             {
1708                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomRight_get();
1709                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1710                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1711                 return ret;
1712             }
1713         }
1714     }
1715
1716     /// <summary>
1717     /// PivotPoint constants.
1718     /// </summary>
1719     /// <since_tizen> 3 </since_tizen>
1720     public struct PivotPoint
1721     {
1722         /// <summary>
1723         /// Top
1724         /// </summary>
1725         /// <since_tizen> 3 </since_tizen>
1726         public static float Top
1727         {
1728             get
1729             {
1730                 float ret = NDalicPINVOKE.AnchorPointTop_get();
1731                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1732                 return ret;
1733             }
1734         }
1735         /// <summary>
1736         /// Bottom
1737         /// </summary>
1738         /// <since_tizen> 3 </since_tizen>
1739         public static float Bottom
1740         {
1741             get
1742             {
1743                 float ret = NDalicPINVOKE.AnchorPointBottom_get();
1744                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1745                 return ret;
1746             }
1747         }
1748         /// <summary>
1749         /// Left
1750         /// </summary>
1751         /// <since_tizen> 3 </since_tizen>
1752         public static float Left
1753         {
1754             get
1755             {
1756                 float ret = NDalicPINVOKE.AnchorPointLeft_get();
1757                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1758                 return ret;
1759             }
1760         }
1761         /// <summary>
1762         /// Right
1763         /// </summary>
1764         /// <since_tizen> 3 </since_tizen>
1765         public static float Right
1766         {
1767             get
1768             {
1769                 float ret = NDalicPINVOKE.AnchorPointRight_get();
1770                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1771                 return ret;
1772             }
1773         }
1774         /// <summary>
1775         /// Middle
1776         /// </summary>
1777         /// <since_tizen> 3 </since_tizen>
1778         public static float Middle
1779         {
1780             get
1781             {
1782                 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
1783                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1784                 return ret;
1785             }
1786         }
1787         /// <summary>
1788         /// TopLeft
1789         /// </summary>
1790         /// <since_tizen> 3 </since_tizen>
1791         public static Position TopLeft
1792         {
1793             get
1794             {
1795                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
1796                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1797                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1798                 return ret;
1799             }
1800         }
1801         /// <summary>
1802         /// TopCenter
1803         /// </summary>
1804         /// <since_tizen> 3 </since_tizen>
1805         public static Position TopCenter
1806         {
1807             get
1808             {
1809                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
1810                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1811                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1812                 return ret;
1813             }
1814         }
1815         /// <summary>
1816         /// TopRight
1817         /// </summary>
1818         /// <since_tizen> 3 </since_tizen>
1819         public static Position TopRight
1820         {
1821             get
1822             {
1823                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
1824                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1825                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1826                 return ret;
1827             }
1828         }
1829         /// <summary>
1830         /// CenterLeft
1831         /// </summary>
1832         /// <since_tizen> 3 </since_tizen>
1833         public static Position CenterLeft
1834         {
1835             get
1836             {
1837                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
1838                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1839                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1840                 return ret;
1841             }
1842         }
1843         /// <summary>
1844         /// Center
1845         /// </summary>
1846         /// <since_tizen> 3 </since_tizen>
1847         public static Position Center
1848         {
1849             get
1850             {
1851                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
1852                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1853                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1854                 return ret;
1855             }
1856         }
1857         /// <summary>
1858         /// CenterRight
1859         /// </summary>
1860         /// <since_tizen> 3 </since_tizen>
1861         public static Position CenterRight
1862         {
1863             get
1864             {
1865                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
1866                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1867                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1868                 return ret;
1869             }
1870         }
1871         /// <summary>
1872         /// BottomLeft
1873         /// </summary>
1874         /// <since_tizen> 3 </since_tizen>
1875         public static Position BottomLeft
1876         {
1877             get
1878             {
1879                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
1880                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1881                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1882                 return ret;
1883             }
1884         }
1885         /// <summary>
1886         /// BottomCenter
1887         /// </summary>
1888         /// <since_tizen> 3 </since_tizen>
1889         public static Position BottomCenter
1890         {
1891             get
1892             {
1893                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
1894                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1895                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1896                 return ret;
1897             }
1898         }
1899         /// <summary>
1900         /// BottomRight
1901         /// </summary>
1902         /// <since_tizen> 3 </since_tizen>
1903         public static Position BottomRight
1904         {
1905             get
1906             {
1907                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
1908                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1909                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1910                 return ret;
1911             }
1912         }
1913     }
1914     /// <summary>
1915     /// PositionAxis constants.
1916     /// </summary>
1917     /// <since_tizen> 3 </since_tizen>
1918     public struct PositionAxis
1919     {
1920         /// <summary>
1921         /// The X axis
1922         /// </summary>
1923         /// <since_tizen> 3 </since_tizen>
1924         public static Position X
1925         {
1926             get
1927             {
1928                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_XAXIS_get();
1929                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1930                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1931                 return ret;
1932             }
1933         }
1934         /// <summary>
1935         /// The Y axis
1936         /// </summary>
1937         /// <since_tizen> 3 </since_tizen>
1938         public static Position Y
1939         {
1940             get
1941             {
1942                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_YAXIS_get();
1943                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1944                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1945                 return ret;
1946             }
1947         }
1948         /// <summary>
1949         /// The Z axis
1950         /// </summary>
1951         /// <since_tizen> 3 </since_tizen>
1952         public static Position Z
1953         {
1954             get
1955             {
1956                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZAXIS_get();
1957                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1958                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1959                 return ret;
1960             }
1961         }
1962         /// <summary>
1963         /// The Negative X axis
1964         /// </summary>
1965         /// <since_tizen> 3 </since_tizen>
1966         public static Position NegativeX
1967         {
1968             get
1969             {
1970                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_XAXIS_get();
1971                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1972                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1973                 return ret;
1974             }
1975         }
1976         /// <summary>
1977         /// The Negative Y axis
1978         /// </summary>
1979         /// <since_tizen> 3 </since_tizen>
1980         public static Position NegativeY
1981         {
1982             get
1983             {
1984                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_YAXIS_get();
1985                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1986                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1987                 return ret;
1988             }
1989         }
1990         /// <summary>
1991         /// The Negative Z axis
1992         /// </summary>
1993         /// <since_tizen> 3 </since_tizen>
1994         public static Position NegativeZ
1995         {
1996             get
1997             {
1998                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_ZAXIS_get();
1999                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2000                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2001                 return ret;
2002             }
2003         }
2004     }
2005
2006     /// <summary>
2007     /// Auto scrolling stop behavior.
2008     /// </summary>
2009     /// <since_tizen> 3 </since_tizen>
2010     public enum AutoScrollStopMode
2011     {
2012         /// <summary>
2013         /// Stop animation after current loop finished.
2014         /// </summary>
2015         FinishLoop,
2016         /// <summary>
2017         /// Stop animation immediately and reset position.
2018         /// </summary>
2019         Immediate
2020     }
2021
2022     /// <summary>
2023     /// An enum of screen mode.
2024     /// </summary>
2025     /// <since_tizen> 4 </since_tizen>
2026     public enum ScreenOffMode {
2027         /// <summary>
2028         /// The mode which turns the screen off after a timeout.
2029         /// </summary>
2030         Timout,
2031         /// <summary>
2032         /// The mode which keeps the screen turned on.
2033         /// </summary>
2034         Never
2035     }
2036
2037     /// <summary>
2038     /// An enum of notification window's priority level.
2039     /// </summary>
2040     /// <since_tizen> 3 </since_tizen>
2041     public enum NotificationLevel {
2042         /// <summary>
2043         /// No notification level.<br />
2044         /// Default level.<br />
2045         /// This value makes the notification window place in the layer of the normal window.
2046         /// </summary>
2047         None = -1,
2048         /// <summary>
2049         /// The base nofitication level.
2050         /// </summary>
2051         Base = 10,
2052         /// <summary>
2053         /// The medium notification level than base.
2054         /// </summary>
2055         Medium = 20,
2056         /// <summary>
2057         /// The higher notification level than medium.
2058         /// </summary>
2059         High = 30,
2060         /// <summary>
2061         /// The highest notification level.
2062         /// </summary>
2063         Top = 40
2064     }
2065
2066     /// <summary>
2067     /// An enum of window types.
2068     /// </summary>
2069     /// <since_tizen> 3 </since_tizen>
2070     public enum WindowType {
2071         /// <summary>
2072         /// A default window type.<br />
2073         /// Indicates a normal or top-level window.
2074         /// Almost every window will be created with this type.
2075         /// </summary>
2076         Normal,
2077         /// <summary>
2078         /// A notification window, like a warning about battery life or a new email received.
2079         /// </summary>
2080         Notification,
2081         /// <summary>
2082         /// A persistent utility window, like a toolbox or a palette.
2083         /// </summary>
2084         Utility,
2085         /// <summary>
2086         /// Used for simple dialog windows.
2087         /// </summary>
2088         Dialog
2089     }
2090
2091     /// <since_tizen> 3 </since_tizen>
2092     public enum DisposeTypes
2093     {
2094         /// <summary>
2095         /// Called By User
2096         /// </summary>
2097         /// <since_tizen> 3 </since_tizen>
2098         Explicit,
2099         /// <summary>
2100         /// Called by DisposeQueue
2101         /// </summary>
2102         /// <since_tizen> 3 </since_tizen>
2103         Implicit,
2104     }
2105
2106
2107
2108     /// <summary>
2109     /// [Obsolete("Please do not use! this will be deprecated")]
2110     /// </summary>
2111     /// <since_tizen> 3 </since_tizen>
2112     [Obsolete("Please do not use! this will be deprecated")]
2113     public struct AnchorPoint
2114     {
2115         /// <summary>
2116         /// Top
2117         /// </summary>
2118         /// <since_tizen> 3 </since_tizen>
2119         public static float Top
2120         {
2121             get
2122             {
2123                 float ret = NDalicPINVOKE.AnchorPointTop_get();
2124                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2125                 return ret;
2126             }
2127         }
2128         /// <summary>
2129         /// Bottom
2130         /// </summary>
2131         /// <since_tizen> 3 </since_tizen>
2132         public static float Bottom
2133         {
2134             get
2135             {
2136                 float ret = NDalicPINVOKE.AnchorPointBottom_get();
2137                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2138                 return ret;
2139             }
2140         }
2141         /// <summary>
2142         /// Left
2143         /// </summary>
2144         /// <since_tizen> 3 </since_tizen>
2145         public static float Left
2146         {
2147             get
2148             {
2149                 float ret = NDalicPINVOKE.AnchorPointLeft_get();
2150                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2151                 return ret;
2152             }
2153         }
2154         /// <summary>
2155         /// Right
2156         /// </summary>
2157         /// <since_tizen> 3 </since_tizen>
2158         public static float Right
2159         {
2160             get
2161             {
2162                 float ret = NDalicPINVOKE.AnchorPointRight_get();
2163                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2164                 return ret;
2165             }
2166         }
2167         /// <summary>
2168         /// Middle
2169         /// </summary>
2170         /// <since_tizen> 3 </since_tizen>
2171         public static float Middle
2172         {
2173             get
2174             {
2175                 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
2176                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2177                 return ret;
2178             }
2179         }
2180         /// <summary>
2181         /// TopLeft
2182         /// </summary>
2183         /// <since_tizen> 3 </since_tizen>
2184         public static Position TopLeft
2185         {
2186             get
2187             {
2188                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
2189                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2190                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2191                 return ret;
2192             }
2193         }
2194         /// <summary>
2195         /// TopCenter
2196         /// </summary>
2197         /// <since_tizen> 3 </since_tizen>
2198         public static Position TopCenter
2199         {
2200             get
2201             {
2202                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
2203                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2204                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2205                 return ret;
2206             }
2207         }
2208         /// <summary>
2209         /// TopRight
2210         /// </summary>
2211         /// <since_tizen> 3 </since_tizen>
2212         public static Position TopRight
2213         {
2214             get
2215             {
2216                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
2217                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2218                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2219                 return ret;
2220             }
2221         }
2222         /// <summary>
2223         /// CenterLeft
2224         /// </summary>
2225         /// <since_tizen> 3 </since_tizen>
2226         public static Position CenterLeft
2227         {
2228             get
2229             {
2230                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
2231                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2232                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2233                 return ret;
2234             }
2235         }
2236         /// <summary>
2237         /// Center
2238         /// </summary>
2239         /// <since_tizen> 3 </since_tizen>
2240         public static Position Center
2241         {
2242             get
2243             {
2244                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
2245                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2246                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2247                 return ret;
2248             }
2249         }
2250         /// <summary>
2251         /// CenterRight
2252         /// </summary>
2253         /// <since_tizen> 3 </since_tizen>
2254         public static Position CenterRight
2255         {
2256             get
2257             {
2258                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
2259                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2260                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2261                 return ret;
2262             }
2263         }
2264         /// <summary>
2265         /// BottomLeft
2266         /// </summary>
2267         /// <since_tizen> 3 </since_tizen>
2268         public static Position BottomLeft
2269         {
2270             get
2271             {
2272                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
2273                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2274                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2275                 return ret;
2276             }
2277         }
2278         /// <summary>
2279         /// BottomCenter
2280         /// </summary>
2281         /// <since_tizen> 3 </since_tizen>
2282         public static Position BottomCenter
2283         {
2284             get
2285             {
2286                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
2287                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2288                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2289                 return ret;
2290             }
2291         }
2292         /// <summary>
2293         /// BottomRight
2294         /// </summary>
2295         /// <since_tizen> 3 </since_tizen>
2296         public static Position BottomRight
2297         {
2298             get
2299             {
2300                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
2301                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2302                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2303                 return ret;
2304             }
2305         }
2306     }
2307
2308     /// <summary>
2309     /// An enum of the scroll state of the text eidtor.
2310     /// </summary>
2311     /// <since_tizen> 3 </since_tizen>
2312     public enum ScrollState
2313     {
2314         /// <summary>
2315         /// Scrolling is started.
2316         /// </summary>
2317         Started,
2318
2319         /// <summary>
2320         /// Scrolling is finished.
2321         /// </summary>
2322         Finished
2323     }
2324
2325      /// <summary>
2326     /// An enum of the line wrap mode of text controls.
2327     /// </summary>
2328     /// <since_tizen> 4 </since_tizen>
2329     public enum LineWrapMode
2330     {
2331         /// <summary>
2332         /// The word mode will move a word to the next line.
2333         /// </summary>
2334         /// <since_tizen> 4 </since_tizen>
2335         Word,
2336
2337         /// <summary>
2338         /// character will move character by character to the next line.
2339         /// </summary>
2340         /// <since_tizen> 4 </since_tizen>
2341         Character
2342     }
2343
2344 }