Merge "[NUI] Remove deprecated APIs"
[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     /// Specifies the Release Policy types <br />
654     /// Decides if the image should be cached in different conditions
655     /// </summary>
656     /// <since_tizen> 5 </since_tizen>
657     public enum ReleasePolicyType
658     {
659       /// <summary>
660       /// Image is released when visual detached from scene
661       /// </summary>
662       Detached = 0,
663       /// <summary>
664       /// Image is only released when visual is destroyed
665       /// </summary>
666       Destroyed,
667       /// <summary>
668       /// Image is not released.
669       /// </summary>
670       Never
671     }
672
673     /// <summary>
674     /// Specifies the Load Policy types <br />
675     /// Decides when the image texture should be loaded
676     /// </summary>
677     /// <since_tizen> 5 </since_tizen>
678     public enum LoadPolicyType
679     {
680        /// <summary>
681        /// Load texture once the image source has been provided. Even if not being used yet.
682        /// </summary>
683        Immediate = 0,
684        /// <summary>
685        /// Only load texture once the visual is attached, when the image needs to be shown.
686        /// </summary>
687        Attached
688     }
689
690
691     /// <summary>
692     /// The type of coordinate system for certain attributes of the points in a gradient.
693     /// </summary>
694     /// <since_tizen> 3 </since_tizen>
695     public enum GradientVisualUnitsType
696     {
697         /// <summary>
698         /// 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).
699         /// </summary>
700         ObjectBoundingBox,
701         /// <summary>
702         /// 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).
703         /// </summary>
704         UserSpace
705     }
706
707     /// <summary>
708     /// This specifies SpreadMethod types.<br />
709     /// SpreadMethod defines what happens if the gradient starts or ends inside the bounds of the target rectangle.<br />
710     /// </summary>
711     /// <since_tizen> 3 </since_tizen>
712     public enum GradientVisualSpreadMethodType
713     {
714         /// <summary>
715         /// Uses the terminal colors of the gradient to fill the remainder of the quad.
716         /// </summary>
717         Pad,
718         /// <summary>
719         /// Reflects the gradient pattern start-to-end, end-to-start, start-to-end, etc. until the quad is filled.
720         /// </summary>
721         Reflect,
722         /// <summary>
723         /// Repeats the gradient pattern start-to-end, start-to-end, start-to-end, etc. until the quad is filled.
724         /// </summary>
725         Repeat
726     }
727
728     /// <summary>
729     /// The shading mode used by the mesh visual.
730     /// </summary>
731     /// <since_tizen> 3 </since_tizen>
732     public enum MeshVisualShadingModeValue
733     {
734         /// <summary>
735         /// *Simplest*. One color that is lit by ambient and diffuse lighting.
736         /// </summary>
737         TexturelessWithDiffuseLighting,
738         /// <summary>
739         /// Uses only the visual image textures provided with specular lighting in addition to ambient and diffuse lighting.
740         /// </summary>
741         TexturedWithSpecularLighting,
742         /// <summary>
743         /// Uses all textures provided including gloss, normal, and texture map along with specular, ambient, and diffuse lighting.
744         /// </summary>
745         TexturedWithDetailedSpecularLighting
746     }
747
748     /// <summary>
749     /// The primitive shape to render as a primitive visual.
750     /// </summary>
751     /// <since_tizen> 3 </since_tizen>
752     public enum PrimitiveVisualShapeType
753     {
754         /// <summary>
755         /// A perfectly round geometrical object in the three-dimensional space.
756         /// </summary>
757         Sphere,
758         /// <summary>
759         /// The area bound between two circles, i.e., a cone with the tip removed.
760         /// </summary>
761         ConicalFrustrum,
762         /// <summary>
763         /// Equivalent to a conical frustrum with the top radius of zero.
764         /// </summary>Equivalent to a conical frustrum with the top radius of zero.
765         Cone,
766         /// <summary>
767         /// Equivalent to a conical frustrum with the top radius of zero.
768         /// </summary>
769         Cylinder,
770         /// <summary>
771         /// Equivalent to a conical frustrum with equal radii for the top and bottom circles.
772         /// </summary>
773         Cube,
774         /// <summary>
775         /// Equivalent to a bevelled cube with a bevel percentage of zero.
776         /// </summary>
777         Octahedron,
778         /// <summary>
779         /// Equivalent to a bevelled cube with a bevel percentage of one.
780         /// </summary>
781         BevelledCube
782     }
783
784     /// <summary>
785     /// This specifies fitting mode types. Fitting options, used when resizing images to fit desired dimensions.<br />
786     /// A fitting mode controls the region of a loaded image to be mapped to the desired image rectangle.<br />
787     /// All fitting modes preserve the aspect ratio of the image contents.<br />
788     /// </summary>
789     /// <since_tizen> 3 </since_tizen>
790     public enum FittingModeType
791     {
792         /// <summary>
793         /// Full-screen image display: Limit loaded image resolution to device resolution using the ShrinkToFit mode.
794         /// </summary>
795         ShrinkToFit,
796         /// <summary>
797         /// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the ScaleToFill mode.
798         /// </summary>
799         ScaleToFill,
800         /// <summary>
801         /// Image columns: Limit loaded image resolution to column width using the FitWidth mode.
802         /// </summary>
803         FitWidth,
804         /// <summary>
805         /// Image rows: Limit loaded image resolution to row height using the FitHeight mode.
806         /// </summary>
807         FitHeight
808     }
809
810     /// <summary>
811     /// This specifies sampling mode types. Filtering options are used when resizing images to sample original pixels.<br />
812     /// A SamplingMode controls how pixels in an input image are sampled and combined to generate each pixel of a destination image during scaling.<br />
813     /// 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 />
814     /// but all other filter modes do if the desired dimensions are not more than the raw dimensions of the input image file.<br />
815     /// </summary>
816     /// <since_tizen> 3 </since_tizen>
817     public enum SamplingModeType
818     {
819         /// <summary>
820         /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size. <br />
821         /// This is the default.
822         /// </summary>
823         Box,
824         /// <summary>
825         /// For each output pixel, read one input pixel.
826         /// </summary>
827         Nearest,
828         /// <summary>
829         /// For each output pixel, read a quad of four input pixels and write a weighted average of them.
830         /// </summary>
831         Linear,
832         /// <summary>
833         /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size, <br />
834         /// then for each output pixel, read one pixel from the last level of box filtering.<br />
835         /// </summary>
836         BoxThenNearest,
837         /// <summary>
838         /// 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.
839         /// </summary>
840         BoxThenLinear,
841         /// <summary>
842         /// 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.
843         /// </summary>
844         NoFilter,
845         /// <summary>
846         /// For caching algorithms where a client strongly prefers a cache-hit to reuse a cached image.
847         /// </summary>
848         DontCare
849     }
850
851     /// <summary>
852     /// This specifies policy types that could be used by the transform for the offset or size.
853     /// </summary>
854     /// <since_tizen> 3 </since_tizen>
855     public enum VisualTransformPolicyType
856     {
857         /// <summary>
858         /// Relative to the control (percentage [0.0f to 1.0f] of the control).
859         /// </summary>
860         Relative = 0,
861         /// <summary>
862         /// Absolute value in world units.
863         /// </summary>
864         Absolute = 1
865     }
866
867     /// <summary>
868     /// This specifies all the transform property types.
869     /// </summary>
870     /// <since_tizen> 3 </since_tizen>
871     public enum VisualTransformPropertyType
872     {
873         /// <summary>
874         /// Offset of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
875         /// </summary>
876         Offset,
877         /// <summary>
878         /// Size of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
879         /// </summary>
880         Size,
881         /// <summary>
882         /// The origin of the visual within its control area.
883         /// </summary>
884         Origin,
885         /// <summary>
886         /// The anchor-point of the visual.
887         /// </summary>
888         AnchorPoint,
889         /// <summary>
890         /// Whether the x or y offset values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
891         /// </summary>
892         OffsetPolicy,
893         /// <summary>
894         /// Whether the width or the height size values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
895         /// </summary>
896         SizePolicy
897     }
898
899     /// <summary>
900     /// This specifies visual types.
901     /// </summary>
902     /// <since_tizen> 3 </since_tizen>
903     public struct Visual
904     {
905         /// <summary>
906         /// The index for the visual type.
907         /// </summary>
908         /// <since_tizen> 3 </since_tizen>
909         public enum Type
910         {
911             /// <summary>
912             /// Renders a solid color as an internal border to the control's quad.
913             /// </summary>
914             Border,
915             /// <summary>
916             /// Renders a solid color to the control's quad.
917             /// </summary>
918             Color,
919             /// <summary>
920             /// Renders a smooth transition of colors to the control's quad.
921             /// </summary>
922             Gradient,
923             /// <summary>
924             /// Renders an image into the control's quad.
925             /// </summary>
926             Image,
927             /// <summary>
928             /// Renders a mesh using an "obj" file, optionally with textures provided by an "mtl" file.
929             /// </summary>
930             Mesh,
931             /// <summary>
932             /// Renders a simple 3D shape, such as a cube or a sphere.
933             /// </summary>
934             Primitive,
935             /// <summary>
936             /// Renders a simple wire-frame outlining a quad.
937             /// </summary>
938             Wireframe,
939             /// <summary>
940             /// Renders text.
941             /// </summary>
942             Text,
943             /// <summary>
944             /// Renders an n-patch image.
945             /// </summary>
946             NPatch,
947             /// <summary>
948             /// Renders an SVG image.
949             /// </summary>
950             SVG,
951             /// <summary>
952             /// Renders a animated image (animated GIF).
953             /// </summary>
954             AnimatedImage
955         }
956
957         /// <summary>
958         /// This specifies visual properties.
959         /// </summary>
960         /// <since_tizen> 3 </since_tizen>
961         public struct Property
962         {
963             /// <summary>
964             /// Type.
965             /// </summary>
966             /// <since_tizen> 3 </since_tizen>
967             public static readonly int Type = NDalic.VISUAL_PROPERTY_TYPE;
968             /// <summary>
969             /// Shader.
970             /// </summary>
971             /// <since_tizen> 3 </since_tizen>
972             public static readonly int Shader = NDalic.VISUAL_PROPERTY_SHADER;
973             /// <summary>
974             /// Transform.
975             /// </summary>
976             /// <since_tizen> 3 </since_tizen>
977             public static readonly int Transform = NDalic.VISUAL_PROPERTY_TRANSFORM;
978             /// <summary>
979             /// PremultipliedAlpha.
980             /// </summary>
981             /// <since_tizen> 3 </since_tizen>
982             public static readonly int PremultipliedAlpha = NDalic.VISUAL_PROPERTY_PREMULTIPLIED_ALPHA;
983             /// <summary>
984             /// MixColor.
985             /// </summary>
986             /// <since_tizen> 3 </since_tizen>
987             public static readonly int MixColor = NDalic.VISUAL_PROPERTY_MIX_COLOR;
988             /// <summary>
989             /// Opacity.
990             /// </summary>
991             /// <since_tizen> 3 </since_tizen>
992             public static readonly int Opacity = NDalic.VISUAL_PROPERTY_MIX_COLOR + 1;
993         }
994
995         /// <summary>
996         /// This specifies shader properties.
997         /// </summary>
998         /// <since_tizen> 3 </since_tizen>
999         public struct ShaderProperty
1000         {
1001             /// <summary>
1002             /// Vertex shader code
1003             /// </summary>
1004             /// <since_tizen> 3 </since_tizen>
1005             public static readonly int VertexShader = NDalic.VISUAL_SHADER_VERTEX;
1006             /// <summary>
1007             /// Fragment shader code
1008             /// </summary>
1009             /// <since_tizen> 3 </since_tizen>
1010             public static readonly int FragmentShader = NDalic.VISUAL_SHADER_FRAGMENT;
1011             /// <summary>
1012             /// How to subdivide the grid along X
1013             /// </summary>
1014             /// <since_tizen> 3 </since_tizen>
1015             public static readonly int ShaderSubdivideGridX = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_X;
1016             /// <summary>
1017             /// How to subdivide the grid along Y
1018             /// </summary>
1019             /// <since_tizen> 3 </since_tizen>
1020             public static readonly int ShaderSubdivideGridY = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_Y;
1021             /// <summary>
1022             /// Bitmask of hints
1023             /// </summary>
1024             /// <since_tizen> 3 </since_tizen>
1025             public static readonly int ShaderHints = NDalic.VISUAL_SHADER_HINTS;
1026         }
1027
1028         /// <summary>
1029         /// This specifies visaul align types.
1030         /// </summary>
1031         /// <since_tizen> 3 </since_tizen>
1032         public enum AlignType
1033         {
1034             /// <summary>
1035             /// TopBegin
1036             /// </summary>
1037             /// <since_tizen> 3 </since_tizen>
1038             TopBegin = 0,
1039             /// <summary>
1040             /// TopCenter
1041             /// </summary>
1042             /// <since_tizen> 3 </since_tizen>
1043             TopCenter,
1044             /// <summary>
1045             /// TopEnd
1046             /// </summary>
1047             /// <since_tizen> 3 </since_tizen>
1048             TopEnd,
1049             /// <summary>
1050             /// CenterBegin
1051             /// </summary>
1052             /// <since_tizen> 3 </since_tizen>
1053             CenterBegin,
1054             /// <summary>
1055             /// Center
1056             /// </summary>
1057             /// <since_tizen> 3 </since_tizen>
1058             Center,
1059             /// <summary>
1060             /// CenterEnd
1061             /// </summary>
1062             /// <since_tizen> 3 </since_tizen>
1063             CenterEnd,
1064             /// <summary>
1065             /// BottomBegin
1066             /// </summary>
1067             /// <since_tizen> 3 </since_tizen>
1068             BottomBegin,
1069             /// <summary>
1070             /// BottomCenter
1071             /// </summary>
1072             /// <since_tizen> 3 </since_tizen>
1073             BottomCenter,
1074             /// <summary>
1075             /// BottomEnd
1076             /// </summary>
1077             /// <since_tizen> 3 </since_tizen>
1078             BottomEnd
1079         }
1080     }
1081
1082     /// <summary>
1083     /// This specifies properties of the BorderVisual.
1084     /// </summary>
1085     /// <since_tizen> 3 </since_tizen>
1086     public struct BorderVisualProperty
1087     {
1088         /// <summary>
1089         /// The color of the border.
1090         /// </summary>
1091         /// <since_tizen> 3 </since_tizen>
1092         public static readonly int Color = NDalic.BORDER_VISUAL_COLOR;
1093         /// <summary>
1094         /// The width of the border (in pixels).
1095         /// </summary>
1096         /// <since_tizen> 3 </since_tizen>
1097         public static readonly int Size = NDalic.BORDER_VISUAL_SIZE;
1098         /// <summary>
1099         /// Whether anti-aliasing of the border is required.
1100         /// </summary>
1101         /// <since_tizen> 3 </since_tizen>
1102         public static readonly int AntiAliasing = NDalic.BORDER_VISUAL_ANTI_ALIASING;
1103     }
1104
1105     /// <summary>
1106     /// This specifies properties of the ColorVisual.
1107     /// </summary>
1108     /// <since_tizen> 3 </since_tizen>
1109     public struct ColorVisualProperty
1110     {
1111         /// <summary>
1112         /// The solid color required.
1113         /// </summary>
1114         /// <since_tizen> 3 </since_tizen>
1115         public static readonly int MixColor = NDalic.COLOR_VISUAL_MIX_COLOR;
1116     }
1117
1118     /// <summary>
1119     /// This specifies properties of the GradientVisual.
1120     /// </summary>
1121     /// <since_tizen> 3 </since_tizen>
1122     public struct GradientVisualProperty
1123     {
1124         /// <summary>
1125         /// The start position of a linear gradient.
1126         /// </summary>
1127         /// <since_tizen> 3 </since_tizen>
1128         public static readonly int StartPosition = NDalic.GRADIENT_VISUAL_START_POSITION;
1129         /// <summary>
1130         /// The end position of a linear gradient.
1131         /// </summary>
1132         /// <since_tizen> 3 </since_tizen>
1133         public static readonly int EndPosition = NDalic.GRADIENT_VISUAL_END_POSITION;
1134         /// <summary>
1135         /// The center point of a radial gradient.
1136         /// </summary>
1137         /// <since_tizen> 3 </since_tizen>
1138         public static readonly int Center = NDalic.GRADIENT_VISUAL_CENTER;
1139         /// <summary>
1140         /// The size of the radius of a radial gradient.
1141         /// </summary>
1142         /// <since_tizen> 3 </since_tizen>
1143         public static readonly int Radius = NDalic.GRADIENT_VISUAL_RADIUS;
1144         /// <summary>
1145         /// All the stop offsets.
1146         /// </summary>
1147         /// <since_tizen> 3 </since_tizen>
1148         public static readonly int StopOffset = NDalic.GRADIENT_VISUAL_STOP_OFFSET;
1149         /// <summary>
1150         /// The color at the stop offsets.
1151         /// </summary>
1152         /// <since_tizen> 3 </since_tizen>
1153         public static readonly int StopColor = NDalic.GRADIENT_VISUAL_STOP_COLOR;
1154         /// <summary>
1155         /// Defines the coordinate system for certain attributes of the points in a gradient.
1156         /// </summary>
1157         /// <since_tizen> 3 </since_tizen>
1158         public static readonly int Units = NDalic.GRADIENT_VISUAL_UNITS;
1159         /// <summary>
1160         /// Indicates what happens if the gradient starts or ends inside the bounds of the target rectangle.
1161         /// </summary>
1162         /// <since_tizen> 3 </since_tizen>
1163         public static readonly int SpreadMethod = NDalic.GRADIENT_VISUAL_SPREAD_METHOD;
1164     }
1165
1166     /// <summary>
1167     /// This specifies properties of the ImageVisual.
1168     /// </summary>
1169     /// <since_tizen> 3 </since_tizen>
1170     public struct ImageVisualProperty
1171     {
1172         /// <summary>
1173         /// The URL of the image.
1174         /// </summary>
1175         /// <since_tizen> 3 </since_tizen>
1176         public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
1177         /// <summary>
1178         /// The URL of the alpha mask image.
1179         /// </summary>
1180         /// <since_tizen> 3 </since_tizen>
1181         public static readonly int AlphaMaskURL = NDalic.IMAGE_VISUAL_ALPHA_MASK_URL;
1182         /// <summary>
1183         /// Fitting options, used when resizing images to fit desired dimensions.
1184         /// </summary>
1185         /// <since_tizen> 3 </since_tizen>
1186         public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
1187         /// <summary>
1188         /// Filtering options, used when resizing images to sample original pixels.
1189         /// </summary>
1190         /// <since_tizen> 3 </since_tizen>
1191         public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
1192         /// <summary>
1193         /// The desired image width.
1194         /// </summary>
1195         /// <since_tizen> 3 </since_tizen>
1196         public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
1197         /// <summary>
1198         /// The desired image height.
1199         /// </summary>
1200         /// <since_tizen> 3 </since_tizen>
1201         public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
1202         /// <summary>
1203         /// Whether to load the image synchronously.
1204         /// </summary>
1205         /// <since_tizen> 3 </since_tizen>
1206         public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
1207         /// <summary>
1208         /// If true, only draws the borders.
1209         /// </summary>
1210         /// <since_tizen> 3 </since_tizen>
1211         public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
1212         /// <summary>
1213         /// The image area to be displayed.
1214         /// </summary>
1215         /// <since_tizen> 3 </since_tizen>
1216         public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
1217         /// <summary>
1218         /// The wrap mode for u coordinate.
1219         /// </summary>
1220         /// <since_tizen> 3 </since_tizen>
1221         public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
1222         /// <summary>
1223         /// The wrap mode for v coordinate.
1224         /// </summary>
1225         /// <since_tizen> 3 </since_tizen>
1226         public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
1227         /// <summary>
1228         /// The border of the image.
1229         /// </summary>
1230         /// <since_tizen> 3 </since_tizen>
1231         public static readonly int Border = NDalic.IMAGE_VISUAL_BORDER;
1232         /// <summary>
1233         /// The scale factor to apply to the content image before masking.
1234         /// </summary>
1235         /// <since_tizen> 4 </since_tizen>
1236         public static readonly int MaskContentScale = NDalic.IMAGE_VISUAL_MASK_CONTENT_SCALE;
1237         /// <summary>
1238         /// Whether to crop image to mask or scale mask to fit image
1239         /// </summary>
1240         /// <since_tizen> 4 </since_tizen>
1241         public static readonly int CropToMask = NDalic.IMAGE_VISUAL_CROP_TO_MASK;
1242         /// <summary>
1243         /// Defines the batch size for pre-loading images in the AnimatedImageVisual
1244         /// </summary>
1245         /// <since_tizen> 4 </since_tizen>
1246         public static readonly int BatchSize = NDalic.IMAGE_VISUAL_BATCH_SIZE;
1247         /// <summary>
1248         /// Defines the cache size for loading images in the AnimatedImageVisual
1249         /// </summary>
1250         /// <since_tizen> 4 </since_tizen>
1251         public static readonly int CacheSize = NDalic.IMAGE_VISUAL_CACHE_SIZE;
1252         /// <summary>
1253         /// The number of milliseconds between each frame in the AnimatedImageVisual
1254         /// </summary>
1255         /// <since_tizen> 4 </since_tizen>
1256         public static readonly int FrameDelay = NDalic.IMAGE_VISUAL_FRAME_DELAY;
1257         /// <summary>
1258         /// The policy to determine when an image should no longer be cached
1259         /// </summary>
1260         /// <since_tizen> 5 </since_tizen>
1261         public static readonly int ReleasePolicy = NDalic.IMAGE_VISUAL_RELEASE_POLICY;
1262         /// <summary>
1263         /// The policy to determine when an image should be loaded
1264         /// </summary>
1265         /// <since_tizen> 5 </since_tizen>
1266         public static readonly int LoadPolicy = NDalic.IMAGE_VISUAL_LOAD_POLICY;
1267         /// <summary>
1268         /// Determines if image orientation should be corrected so the image displays as it was intended
1269         /// </summary>
1270         /// <since_tizen> 5 </since_tizen>
1271         public static readonly int OrientationCorrection = NDalic.IMAGE_VISUAL_ORIENTATION_CORRECTION;
1272     }
1273
1274     /// <summary>
1275     /// This specifies properties of the MeshVisual.
1276     /// </summary>
1277     /// <since_tizen> 3 </since_tizen>
1278     public struct MeshVisualProperty
1279     {
1280         /// <summary>
1281         /// The location of the ".obj" file.
1282         /// </summary>
1283         /// <since_tizen> 3 </since_tizen>
1284         public static readonly int ObjectURL = NDalic.MESH_VISUAL_OBJECT_URL;
1285         /// <summary>
1286         /// The location of the ".mtl" file.
1287         /// </summary>
1288         /// <since_tizen> 3 </since_tizen>
1289         public static readonly int MaterialtURL = NDalic.MESH_VISUAL_MATERIAL_URL;
1290         /// <summary>
1291         /// Path to the directory the textures (including gloss and normal) are stored in.
1292         /// </summary>
1293         /// <since_tizen> 3 </since_tizen>
1294         public static readonly int TexturesPath = NDalic.MESH_VISUAL_TEXTURES_PATH;
1295         /// <summary>
1296         /// Sets the type of shading mode that the mesh will use.
1297         /// </summary>
1298         /// <since_tizen> 3 </since_tizen>
1299         public static readonly int ShadingMode = NDalic.MESH_VISUAL_SHADING_MODE;
1300         /// <summary>
1301         /// Whether to use mipmaps for textures or not.
1302         /// </summary>
1303         /// <since_tizen> 3 </since_tizen>
1304         public static readonly int UseMipmapping = NDalic.MESH_VISUAL_USE_MIPMAPPING;
1305         /// <summary>
1306         /// Whether to average normals at each point to smooth textures or not.
1307         /// </summary>
1308         /// <since_tizen> 3 </since_tizen>
1309         public static readonly int UseSoftNormals = NDalic.MESH_VISUAL_USE_SOFT_NORMALS;
1310         /// <summary>
1311         /// The position, in stage space, of the point light that applies lighting to the model.
1312         /// </summary>
1313         /// <since_tizen> 3 </since_tizen>
1314         public static readonly int LightPosition = NDalic.MESH_VISUAL_LIGHT_POSITION;
1315     }
1316
1317     /// <summary>
1318     /// This specifies properties of the PrimitiveVisual.
1319     /// </summary>
1320     /// <since_tizen> 3 </since_tizen>
1321     public struct PrimitiveVisualProperty
1322     {
1323         /// <summary>
1324         /// The specific shape to render.
1325         /// </summary>
1326         /// <since_tizen> 3 </since_tizen>
1327         public static readonly int Shape = NDalic.PRIMITIVE_VISUAL_SHAPE;
1328         /// <summary>
1329         /// The color of the shape.
1330         /// </summary>
1331         /// <since_tizen> 3 </since_tizen>
1332         public static readonly int MixColor = NDalic.PRIMITIVE_VISUAL_MIX_COLOR;
1333         /// <summary>
1334         /// The number of slices as you go around the shape.
1335         /// </summary>
1336         /// <since_tizen> 3 </since_tizen>
1337         public static readonly int Slices = NDalic.PRIMITIVE_VISUAL_SLICES;
1338         /// <summary>
1339         /// The number of stacks as you go down the shape.
1340         /// </summary>
1341         /// <since_tizen> 3 </since_tizen>
1342         public static readonly int Stacks = NDalic.PRIMITIVE_VISUAL_STACKS;
1343         /// <summary>
1344         /// The scale of the radius of the top circle of a conical frustrum.
1345         /// </summary>
1346         /// <since_tizen> 3 </since_tizen>
1347         public static readonly int ScaleTopRadius = NDalic.PRIMITIVE_VISUAL_SCALE_TOP_RADIUS;
1348         /// <summary>
1349         /// The scale of the radius of the bottom circle of a conical frustrum.
1350         /// </summary>
1351         /// <since_tizen> 3 </since_tizen>
1352         public static readonly int ScaleBottomRadius = NDalic.PRIMITIVE_VISUAL_SCALE_BOTTOM_RADIUS;
1353         /// <summary>
1354         /// The scale of the height of a conic.
1355         /// </summary>
1356         /// <since_tizen> 3 </since_tizen>
1357         public static readonly int ScaleHeight = NDalic.PRIMITIVE_VISUAL_SCALE_HEIGHT;
1358         /// <summary>
1359         /// The scale of the radius of a cylinder.
1360         /// </summary>
1361         /// <since_tizen> 3 </since_tizen>
1362         public static readonly int ScaleRadius = NDalic.PRIMITIVE_VISUAL_SCALE_RADIUS;
1363         /// <summary>
1364         /// The dimensions of a cuboid. Scales in the same fashion as a 9-patch image.
1365         /// </summary>
1366         /// <since_tizen> 3 </since_tizen>
1367         public static readonly int ScaleDimensions = NDalic.PRIMITIVE_VISUAL_SCALE_DIMENSIONS;
1368         /// <summary>
1369         /// Determines how bevelled the cuboid should be, based off the smallest dimension.
1370         /// </summary>
1371         /// <since_tizen> 3 </since_tizen>
1372         public static readonly int BevelPercentage = NDalic.PRIMITIVE_VISUAL_BEVEL_PERCENTAGE;
1373         /// <summary>
1374         /// Defines how smooth the bevelled edges should be.
1375         /// </summary>
1376         /// <since_tizen> 3 </since_tizen>
1377         public static readonly int BevelSmoothness = NDalic.PRIMITIVE_VISUAL_BEVEL_SMOOTHNESS;
1378         /// <summary>
1379         /// The position, in stage space, of the point light that applies lighting to the model.
1380         /// </summary>
1381         /// <since_tizen> 3 </since_tizen>
1382         public static readonly int LightPosition = NDalic.PRIMITIVE_VISUAL_LIGHT_POSITION;
1383     }
1384
1385     /// <summary>
1386     /// This specifies properties of the TextVisual.
1387     /// </summary>
1388     /// <since_tizen> 3 </since_tizen>
1389     public struct TextVisualProperty
1390     {
1391         /// <summary>
1392         /// The text to display in UTF-8 format.
1393         /// </summary>
1394         /// <since_tizen> 3 </since_tizen>
1395         public static readonly int Text = NDalic.TEXT_VISUAL_TEXT;
1396         /// <summary>
1397         /// The requested font family to use.
1398         /// </summary>
1399         /// <since_tizen> 3 </since_tizen>
1400         public static readonly int FontFamily = NDalic.TEXT_VISUAL_FONT_FAMILY;
1401         /// <summary>
1402         /// The requested font style to use.
1403         /// </summary>
1404         /// <since_tizen> 3 </since_tizen>
1405         public static readonly int FontStyle = NDalic.TEXT_VISUAL_FONT_STYLE;
1406         /// <summary>
1407         /// The size of font in points.
1408         /// </summary>
1409         /// <since_tizen> 3 </since_tizen>
1410         public static readonly int PointSize = NDalic.TEXT_VISUAL_POINT_SIZE;
1411         /// <summary>
1412         /// The single-line or multi-line layout option.
1413         /// </summary>
1414         /// <since_tizen> 3 </since_tizen>
1415         public static readonly int MultiLine = NDalic.TEXT_VISUAL_MULTI_LINE;
1416         /// <summary>
1417         /// The line horizontal alignment.
1418         /// </summary>
1419         /// <since_tizen> 3 </since_tizen>
1420         public static readonly int HorizontalAlignment = NDalic.TEXT_VISUAL_HORIZONTAL_ALIGNMENT;
1421         /// <summary>
1422         /// The line vertical alignment.
1423         /// </summary>
1424         /// <since_tizen> 3 </since_tizen>
1425         public static readonly int VerticalAlignment = NDalic.TEXT_VISUAL_VERTICAL_ALIGNMENT;
1426         /// <summary>
1427         /// The color of the text.
1428         /// </summary>
1429         /// <since_tizen> 3 </since_tizen>
1430         public static readonly int TextColor = NDalic.TEXT_VISUAL_TEXT_COLOR;
1431         /// <summary>
1432         /// Whether the mark-up processing is enabled.
1433         /// </summary>
1434         /// <since_tizen> 3 </since_tizen>
1435         public static readonly int EnableMarkup = NDalic.TEXT_VISUAL_ENABLE_MARKUP;
1436     }
1437
1438     /// <summary>
1439     /// This specifies properties of the NpatchImageVisual.
1440     /// </summary>
1441     /// <since_tizen> 3 </since_tizen>
1442     public struct NpatchImageVisualProperty
1443     {
1444         /// <summary>
1445         /// The URL of the image.
1446         /// </summary>
1447         /// <since_tizen> 3 </since_tizen>
1448         public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
1449         /// <summary>
1450         /// Fitting options, used when resizing images to fit desired dimensions.
1451         /// </summary>
1452         /// <since_tizen> 3 </since_tizen>
1453         public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
1454         /// <summary>
1455         /// Filtering options, used when resizing images to sample original pixels.
1456         /// </summary>
1457         /// <since_tizen> 3 </since_tizen>
1458         public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
1459         /// <summary>
1460         /// The desired image width.
1461         /// </summary>
1462         /// <since_tizen> 3 </since_tizen>
1463         public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
1464         /// <summary>
1465         /// The desired image height.
1466         /// </summary>
1467         /// <since_tizen> 3 </since_tizen>
1468         public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
1469         /// <summary>
1470         /// Whether to load the image synchronously.
1471         /// </summary>
1472         /// <since_tizen> 3 </since_tizen>
1473         public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
1474         /// <summary>
1475         /// If true, only draws the borders.
1476         /// </summary>
1477         /// <since_tizen> 3 </since_tizen>
1478         public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
1479         /// <summary>
1480         /// The image area to be displayed.
1481         /// </summary>
1482         /// <since_tizen> 3 </since_tizen>
1483         public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
1484         /// <summary>
1485         /// The wrap mode for u coordinate.
1486         /// </summary>
1487         /// <since_tizen> 3 </since_tizen>
1488         public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
1489         /// <summary>
1490         /// The wrap mode for v coordinate.
1491         /// </summary>
1492         /// <since_tizen> 3 </since_tizen>
1493         public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
1494         /// <summary>
1495         /// The border of the image.
1496         /// </summary>
1497         /// <since_tizen> 3 </since_tizen>
1498         public static readonly int Border = NDalic.IMAGE_VISUAL_WRAP_MODE_V + 1;
1499     }
1500
1501     /// <summary>
1502     /// The HiddenInput property.
1503     /// </summary>
1504     /// <since_tizen> 3 </since_tizen>
1505     public struct HiddenInputProperty
1506     {
1507         /// <summary>
1508         /// The mode for input text display.
1509         /// </summary>
1510         /// <since_tizen> 3 </since_tizen>
1511         public static readonly int Mode = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_MODE_get();
1512         /// <summary>
1513         /// All input characters are substituted by this character.
1514         /// </summary>
1515         /// <since_tizen> 3 </since_tizen>
1516         public static readonly int SubstituteCharacter = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SUBSTITUTE_CHARACTER_get();
1517         /// <summary>
1518         /// Length of text to show or hide, available when HIDE_COUNT/SHOW_COUNT mode is used.
1519         /// </summary>
1520         /// <since_tizen> 3 </since_tizen>
1521         public static readonly int SubstituteCount = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SUBSTITUTE_COUNT_get();
1522         /// <summary>
1523         /// Hide last character after this duration, available when SHOW_LAST_CHARACTER mode.
1524         /// </summary>
1525         /// <since_tizen> 4 </since_tizen>
1526         public static readonly int ShowLastCharacterDuration = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SHOW_LAST_CHARACTER_DURATION_get();
1527     }
1528
1529     /// <summary>
1530     /// The type for HiddenInput mode.
1531     /// </summary>
1532     /// <since_tizen> 3 </since_tizen>
1533     public enum HiddenInputModeType
1534     {
1535         /// <summary>
1536         /// Don't hide text.
1537         /// </summary>
1538         HideNone,
1539         /// <summary>
1540         /// Hide all the input text.
1541         /// </summary>
1542         HideAll,
1543         /// <summary>
1544         /// Hide n characters from start.
1545         /// </summary>
1546         HideCount,
1547         /// <summary>
1548         /// Show n characters from start.
1549         /// </summary>
1550         ShowCount,
1551         /// <summary>
1552         /// Show last character for the duration(use ShowLastCharacterDuration property to modify duration).
1553         /// </summary>
1554         ShowLastCharacter
1555     }
1556
1557     /// <summary>
1558     /// ParentOrigin constants.
1559     /// </summary>
1560     /// <since_tizen> 3 </since_tizen>
1561     public struct ParentOrigin
1562     {
1563         /// <summary>
1564         /// Top
1565         /// </summary>
1566         /// <since_tizen> 3 </since_tizen>
1567         public static float Top
1568         {
1569             get
1570             {
1571                 float ret = NDalicPINVOKE.ParentOriginTop_get();
1572                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1573                 return ret;
1574             }
1575         }
1576
1577         /// <summary>
1578         /// Bottom
1579         /// </summary>
1580         /// <since_tizen> 3 </since_tizen>
1581         public static float Bottom
1582         {
1583             get
1584             {
1585                 float ret = NDalicPINVOKE.ParentOriginBottom_get();
1586                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1587                 return ret;
1588             }
1589         }
1590
1591         /// <summary>
1592         /// Left
1593         /// </summary>
1594         /// <since_tizen> 3 </since_tizen>
1595         public static float Left
1596         {
1597             get
1598             {
1599                 float ret = NDalicPINVOKE.ParentOriginLeft_get();
1600                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1601                 return ret;
1602             }
1603         }
1604
1605         /// <summary>
1606         /// Right
1607         /// </summary>
1608         /// <since_tizen> 3 </since_tizen>
1609         public static float Right
1610         {
1611             get
1612             {
1613                 float ret = NDalicPINVOKE.ParentOriginRight_get();
1614                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1615                 return ret;
1616             }
1617         }
1618
1619         /// <summary>
1620         /// Middle
1621         /// </summary>
1622         /// <since_tizen> 3 </since_tizen>
1623         public static float Middle
1624         {
1625             get
1626             {
1627                 float ret = NDalicPINVOKE.ParentOriginMiddle_get();
1628                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1629                 return ret;
1630             }
1631         }
1632
1633         /// <summary>
1634         /// TopLeft
1635         /// </summary>
1636         /// <since_tizen> 3 </since_tizen>
1637         public static Position TopLeft
1638         {
1639             get
1640             {
1641                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopLeft_get();
1642                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1643                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1644                 return ret;
1645             }
1646         }
1647
1648         /// <summary>
1649         /// TopCenter
1650         /// </summary>
1651         /// <since_tizen> 3 </since_tizen>
1652         public static Position TopCenter
1653         {
1654             get
1655             {
1656                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopCenter_get();
1657                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1658                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1659                 return ret;
1660             }
1661         }
1662
1663         /// <summary>
1664         /// TopRight
1665         /// </summary>
1666         /// <since_tizen> 3 </since_tizen>
1667         public static Position TopRight
1668         {
1669             get
1670             {
1671                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopRight_get();
1672                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1673                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1674                 return ret;
1675             }
1676         }
1677
1678         /// <summary>
1679         /// CenterLeft
1680         /// </summary>
1681         /// <since_tizen> 3 </since_tizen>
1682         public static Position CenterLeft
1683         {
1684             get
1685             {
1686                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterLeft_get();
1687                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1688                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1689                 return ret;
1690             }
1691         }
1692
1693         /// <summary>
1694         /// Center
1695         /// </summary>
1696         /// <since_tizen> 3 </since_tizen>
1697         public static Position Center
1698         {
1699             get
1700             {
1701                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenter_get();
1702                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1703                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1704                 return ret;
1705             }
1706         }
1707
1708         /// <summary>
1709         /// CenterRight
1710         /// </summary>
1711         /// <since_tizen> 3 </since_tizen>
1712         public static Position CenterRight
1713         {
1714             get
1715             {
1716                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterRight_get();
1717                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1718                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1719                 return ret;
1720             }
1721         }
1722
1723         /// <summary>
1724         /// BottomLeft
1725         /// </summary>
1726         /// <since_tizen> 3 </since_tizen>
1727         public static Position BottomLeft
1728         {
1729             get
1730             {
1731                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomLeft_get();
1732                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1733                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1734                 return ret;
1735             }
1736         }
1737
1738         /// <summary>
1739         /// BottomCenter
1740         /// </summary>
1741         /// <since_tizen> 3 </since_tizen>
1742         public static Position BottomCenter
1743         {
1744             get
1745             {
1746                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomCenter_get();
1747                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1748                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1749                 return ret;
1750             }
1751         }
1752
1753         /// <summary>
1754         /// BottomRight
1755         /// </summary>
1756         /// <since_tizen> 3 </since_tizen>
1757         public static Position BottomRight
1758         {
1759             get
1760             {
1761                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomRight_get();
1762                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1763                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1764                 return ret;
1765             }
1766         }
1767     }
1768
1769     /// <summary>
1770     /// PivotPoint constants.
1771     /// </summary>
1772     /// <since_tizen> 3 </since_tizen>
1773     public struct PivotPoint
1774     {
1775         /// <summary>
1776         /// Top
1777         /// </summary>
1778         /// <since_tizen> 3 </since_tizen>
1779         public static float Top
1780         {
1781             get
1782             {
1783                 float ret = NDalicPINVOKE.AnchorPointTop_get();
1784                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1785                 return ret;
1786             }
1787         }
1788         /// <summary>
1789         /// Bottom
1790         /// </summary>
1791         /// <since_tizen> 3 </since_tizen>
1792         public static float Bottom
1793         {
1794             get
1795             {
1796                 float ret = NDalicPINVOKE.AnchorPointBottom_get();
1797                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1798                 return ret;
1799             }
1800         }
1801         /// <summary>
1802         /// Left
1803         /// </summary>
1804         /// <since_tizen> 3 </since_tizen>
1805         public static float Left
1806         {
1807             get
1808             {
1809                 float ret = NDalicPINVOKE.AnchorPointLeft_get();
1810                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1811                 return ret;
1812             }
1813         }
1814         /// <summary>
1815         /// Right
1816         /// </summary>
1817         /// <since_tizen> 3 </since_tizen>
1818         public static float Right
1819         {
1820             get
1821             {
1822                 float ret = NDalicPINVOKE.AnchorPointRight_get();
1823                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1824                 return ret;
1825             }
1826         }
1827         /// <summary>
1828         /// Middle
1829         /// </summary>
1830         /// <since_tizen> 3 </since_tizen>
1831         public static float Middle
1832         {
1833             get
1834             {
1835                 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
1836                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1837                 return ret;
1838             }
1839         }
1840         /// <summary>
1841         /// TopLeft
1842         /// </summary>
1843         /// <since_tizen> 3 </since_tizen>
1844         public static Position TopLeft
1845         {
1846             get
1847             {
1848                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
1849                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1850                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1851                 return ret;
1852             }
1853         }
1854         /// <summary>
1855         /// TopCenter
1856         /// </summary>
1857         /// <since_tizen> 3 </since_tizen>
1858         public static Position TopCenter
1859         {
1860             get
1861             {
1862                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
1863                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1864                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1865                 return ret;
1866             }
1867         }
1868         /// <summary>
1869         /// TopRight
1870         /// </summary>
1871         /// <since_tizen> 3 </since_tizen>
1872         public static Position TopRight
1873         {
1874             get
1875             {
1876                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
1877                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1878                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1879                 return ret;
1880             }
1881         }
1882         /// <summary>
1883         /// CenterLeft
1884         /// </summary>
1885         /// <since_tizen> 3 </since_tizen>
1886         public static Position CenterLeft
1887         {
1888             get
1889             {
1890                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
1891                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1892                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1893                 return ret;
1894             }
1895         }
1896         /// <summary>
1897         /// Center
1898         /// </summary>
1899         /// <since_tizen> 3 </since_tizen>
1900         public static Position Center
1901         {
1902             get
1903             {
1904                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
1905                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1906                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1907                 return ret;
1908             }
1909         }
1910         /// <summary>
1911         /// CenterRight
1912         /// </summary>
1913         /// <since_tizen> 3 </since_tizen>
1914         public static Position CenterRight
1915         {
1916             get
1917             {
1918                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
1919                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1920                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1921                 return ret;
1922             }
1923         }
1924         /// <summary>
1925         /// BottomLeft
1926         /// </summary>
1927         /// <since_tizen> 3 </since_tizen>
1928         public static Position BottomLeft
1929         {
1930             get
1931             {
1932                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
1933                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1934                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1935                 return ret;
1936             }
1937         }
1938         /// <summary>
1939         /// BottomCenter
1940         /// </summary>
1941         /// <since_tizen> 3 </since_tizen>
1942         public static Position BottomCenter
1943         {
1944             get
1945             {
1946                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
1947                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1948                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1949                 return ret;
1950             }
1951         }
1952         /// <summary>
1953         /// BottomRight
1954         /// </summary>
1955         /// <since_tizen> 3 </since_tizen>
1956         public static Position BottomRight
1957         {
1958             get
1959             {
1960                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
1961                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1962                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1963                 return ret;
1964             }
1965         }
1966     }
1967     /// <summary>
1968     /// PositionAxis constants.
1969     /// </summary>
1970     /// <since_tizen> 3 </since_tizen>
1971     public struct PositionAxis
1972     {
1973         /// <summary>
1974         /// The X axis
1975         /// </summary>
1976         /// <since_tizen> 3 </since_tizen>
1977         public static Position X
1978         {
1979             get
1980             {
1981                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_XAXIS_get();
1982                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1983                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1984                 return ret;
1985             }
1986         }
1987         /// <summary>
1988         /// The Y axis
1989         /// </summary>
1990         /// <since_tizen> 3 </since_tizen>
1991         public static Position Y
1992         {
1993             get
1994             {
1995                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_YAXIS_get();
1996                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1997                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1998                 return ret;
1999             }
2000         }
2001         /// <summary>
2002         /// The Z axis
2003         /// </summary>
2004         /// <since_tizen> 3 </since_tizen>
2005         public static Position Z
2006         {
2007             get
2008             {
2009                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZAXIS_get();
2010                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2011                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2012                 return ret;
2013             }
2014         }
2015         /// <summary>
2016         /// The Negative X axis
2017         /// </summary>
2018         /// <since_tizen> 3 </since_tizen>
2019         public static Position NegativeX
2020         {
2021             get
2022             {
2023                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_XAXIS_get();
2024                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2025                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2026                 return ret;
2027             }
2028         }
2029         /// <summary>
2030         /// The Negative Y axis
2031         /// </summary>
2032         /// <since_tizen> 3 </since_tizen>
2033         public static Position NegativeY
2034         {
2035             get
2036             {
2037                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_YAXIS_get();
2038                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2039                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2040                 return ret;
2041             }
2042         }
2043         /// <summary>
2044         /// The Negative Z axis
2045         /// </summary>
2046         /// <since_tizen> 3 </since_tizen>
2047         public static Position NegativeZ
2048         {
2049             get
2050             {
2051                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_ZAXIS_get();
2052                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2053                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2054                 return ret;
2055             }
2056         }
2057     }
2058
2059     /// <summary>
2060     /// Auto scrolling stop behavior.
2061     /// </summary>
2062     /// <since_tizen> 3 </since_tizen>
2063     public enum AutoScrollStopMode
2064     {
2065         /// <summary>
2066         /// Stop animation after current loop finished.
2067         /// </summary>
2068         FinishLoop,
2069         /// <summary>
2070         /// Stop animation immediately and reset position.
2071         /// </summary>
2072         Immediate
2073     }
2074
2075     /// <summary>
2076     /// An enum of screen mode.
2077     /// </summary>
2078     /// <since_tizen> 4 </since_tizen>
2079     public enum ScreenOffMode {
2080         /// <summary>
2081         /// The mode which turns the screen off after a timeout.
2082         /// </summary>
2083         Timout,
2084         /// <summary>
2085         /// The mode which keeps the screen turned on.
2086         /// </summary>
2087         Never
2088     }
2089
2090     /// <summary>
2091     /// An enum of notification window's priority level.
2092     /// </summary>
2093     /// <since_tizen> 3 </since_tizen>
2094     public enum NotificationLevel {
2095         /// <summary>
2096         /// No notification level.<br />
2097         /// Default level.<br />
2098         /// This value makes the notification window place in the layer of the normal window.
2099         /// </summary>
2100         None = -1,
2101         /// <summary>
2102         /// The base nofitication level.
2103         /// </summary>
2104         Base = 10,
2105         /// <summary>
2106         /// The medium notification level than base.
2107         /// </summary>
2108         Medium = 20,
2109         /// <summary>
2110         /// The higher notification level than medium.
2111         /// </summary>
2112         High = 30,
2113         /// <summary>
2114         /// The highest notification level.
2115         /// </summary>
2116         Top = 40
2117     }
2118
2119     /// <summary>
2120     /// An enum of window types.
2121     /// </summary>
2122     /// <since_tizen> 3 </since_tizen>
2123     public enum WindowType {
2124         /// <summary>
2125         /// A default window type.<br />
2126         /// Indicates a normal or top-level window.
2127         /// Almost every window will be created with this type.
2128         /// </summary>
2129         Normal,
2130         /// <summary>
2131         /// A notification window, like a warning about battery life or a new email received.
2132         /// </summary>
2133         Notification,
2134         /// <summary>
2135         /// A persistent utility window, like a toolbox or a palette.
2136         /// </summary>
2137         Utility,
2138         /// <summary>
2139         /// Used for simple dialog windows.
2140         /// </summary>
2141         Dialog
2142     }
2143
2144     /// <since_tizen> 3 </since_tizen>
2145     public enum DisposeTypes
2146     {
2147         /// <summary>
2148         /// Called By User
2149         /// </summary>
2150         /// <since_tizen> 3 </since_tizen>
2151         Explicit,
2152         /// <summary>
2153         /// Called by DisposeQueue
2154         /// </summary>
2155         /// <since_tizen> 3 </since_tizen>
2156         Implicit,
2157     }
2158
2159
2160
2161     /// <summary>
2162     /// [Obsolete("Please do not use! this will be deprecated")]
2163     /// </summary>
2164     /// <since_tizen> 3 </since_tizen>
2165     [Obsolete("Please do not use! this will be deprecated")]
2166     [EditorBrowsable(EditorBrowsableState.Never)]
2167     public struct AnchorPoint
2168     {
2169         /// <summary>
2170         /// Top
2171         /// </summary>
2172         /// <since_tizen> 3 </since_tizen>
2173         public static float Top
2174         {
2175             get
2176             {
2177                 float ret = NDalicPINVOKE.AnchorPointTop_get();
2178                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2179                 return ret;
2180             }
2181         }
2182         /// <summary>
2183         /// Bottom
2184         /// </summary>
2185         /// <since_tizen> 3 </since_tizen>
2186         public static float Bottom
2187         {
2188             get
2189             {
2190                 float ret = NDalicPINVOKE.AnchorPointBottom_get();
2191                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2192                 return ret;
2193             }
2194         }
2195         /// <summary>
2196         /// Left
2197         /// </summary>
2198         /// <since_tizen> 3 </since_tizen>
2199         public static float Left
2200         {
2201             get
2202             {
2203                 float ret = NDalicPINVOKE.AnchorPointLeft_get();
2204                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2205                 return ret;
2206             }
2207         }
2208         /// <summary>
2209         /// Right
2210         /// </summary>
2211         /// <since_tizen> 3 </since_tizen>
2212         public static float Right
2213         {
2214             get
2215             {
2216                 float ret = NDalicPINVOKE.AnchorPointRight_get();
2217                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2218                 return ret;
2219             }
2220         }
2221         /// <summary>
2222         /// Middle
2223         /// </summary>
2224         /// <since_tizen> 3 </since_tizen>
2225         public static float Middle
2226         {
2227             get
2228             {
2229                 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
2230                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2231                 return ret;
2232             }
2233         }
2234         /// <summary>
2235         /// TopLeft
2236         /// </summary>
2237         /// <since_tizen> 3 </since_tizen>
2238         public static Position TopLeft
2239         {
2240             get
2241             {
2242                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
2243                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2244                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2245                 return ret;
2246             }
2247         }
2248         /// <summary>
2249         /// TopCenter
2250         /// </summary>
2251         /// <since_tizen> 3 </since_tizen>
2252         public static Position TopCenter
2253         {
2254             get
2255             {
2256                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
2257                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2258                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2259                 return ret;
2260             }
2261         }
2262         /// <summary>
2263         /// TopRight
2264         /// </summary>
2265         /// <since_tizen> 3 </since_tizen>
2266         public static Position TopRight
2267         {
2268             get
2269             {
2270                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
2271                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2272                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2273                 return ret;
2274             }
2275         }
2276         /// <summary>
2277         /// CenterLeft
2278         /// </summary>
2279         /// <since_tizen> 3 </since_tizen>
2280         public static Position CenterLeft
2281         {
2282             get
2283             {
2284                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
2285                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2286                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2287                 return ret;
2288             }
2289         }
2290         /// <summary>
2291         /// Center
2292         /// </summary>
2293         /// <since_tizen> 3 </since_tizen>
2294         public static Position Center
2295         {
2296             get
2297             {
2298                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
2299                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2300                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2301                 return ret;
2302             }
2303         }
2304         /// <summary>
2305         /// CenterRight
2306         /// </summary>
2307         /// <since_tizen> 3 </since_tizen>
2308         public static Position CenterRight
2309         {
2310             get
2311             {
2312                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
2313                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2314                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2315                 return ret;
2316             }
2317         }
2318         /// <summary>
2319         /// BottomLeft
2320         /// </summary>
2321         /// <since_tizen> 3 </since_tizen>
2322         public static Position BottomLeft
2323         {
2324             get
2325             {
2326                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
2327                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2328                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2329                 return ret;
2330             }
2331         }
2332         /// <summary>
2333         /// BottomCenter
2334         /// </summary>
2335         /// <since_tizen> 3 </since_tizen>
2336         public static Position BottomCenter
2337         {
2338             get
2339             {
2340                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
2341                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2342                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2343                 return ret;
2344             }
2345         }
2346         /// <summary>
2347         /// BottomRight
2348         /// </summary>
2349         /// <since_tizen> 3 </since_tizen>
2350         public static Position BottomRight
2351         {
2352             get
2353             {
2354                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
2355                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
2356                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2357                 return ret;
2358             }
2359         }
2360     }
2361
2362     /// <summary>
2363     /// An enum of the scroll state of the text eidtor.
2364     /// </summary>
2365     /// <since_tizen> 3 </since_tizen>
2366     public enum ScrollState
2367     {
2368         /// <summary>
2369         /// Scrolling is started.
2370         /// </summary>
2371         Started,
2372
2373         /// <summary>
2374         /// Scrolling is finished.
2375         /// </summary>
2376         Finished
2377     }
2378
2379      /// <summary>
2380     /// An enum of the line wrap mode of text controls.
2381     /// </summary>
2382     /// <since_tizen> 4 </since_tizen>
2383     public enum LineWrapMode
2384     {
2385         /// <summary>
2386         /// The word mode will move a word to the next line.
2387         /// </summary>
2388         /// <since_tizen> 4 </since_tizen>
2389         Word,
2390
2391         /// <summary>
2392         /// character will move character by character to the next line.
2393         /// </summary>
2394         /// <since_tizen> 4 </since_tizen>
2395         Character
2396     }
2397
2398 }