Release 4.0.0-preview1-00271
[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       XAxisScrollEnabled,
27       XAxisSnapToInterval,
28       XAxisScrollBoundary,
29       YAxisScrollEnabled,
30       YAxisSnapToInterval,
31       YAxisScrollBoundary
32     }
33
34     /// <summary>
35     /// This specifies whether the actor uses its own color or inherits.
36     /// </summary>
37     /// <since_tizen> 3 </since_tizen>
38     public enum ColorMode
39     {
40         /// <summary>
41         /// Actor will use its own color.
42         /// </summary>
43         UseOwnColor,
44          /// <summary>
45         /// Actor will use its parent color.
46         /// </summary>
47         UseParentColor,
48         /// <summary>
49         /// Actor will blend its color with its parents color.
50         /// </summary>
51         UseOwnMultiplyParentColor,
52         /// <summary>
53         /// 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.
54         /// </summary>
55         UseOwnMultiplyParentAlpha
56     }
57
58     /// <summary>
59     /// This specifies the dimension of the width or the height for size negotiation.
60     /// </summary>
61     /// <since_tizen> 3 </since_tizen>
62     public enum DimensionType
63     {
64         /// <summary>
65         /// Width dimension.
66         /// </summary>
67         Width = 0x1,
68         /// <summary>
69         /// Height dimension.
70         /// </summary>
71         Height = 0x2,
72         /// <summary>
73         /// Mask to cover all flags.
74         /// </summary>
75         AllDimensions = 0x3
76     }
77
78     /// <summary>
79     /// Enumeration for the instance of how the actor and it's children will be drawn.
80     /// </summary>
81     /// <since_tizen> 3 </since_tizen>
82     public enum DrawModeType
83     {
84         /// <summary>
85         /// The default draw-mode.
86         /// </summary>
87         Normal = 0,
88         /// <summary>
89         /// Draw the actor and its children as an overlay.
90         /// </summary>
91         Overlay2D = 1,
92         /// <summary>
93         /// Will be replaced by separate ClippingMode enum. Draw the actor and its children into the stencil buffer.
94         /// </summary>
95         Stencil = 3
96     }
97
98     /// <summary>
99     /// Enumeration for size negotiation resize policies.
100     /// </summary>
101     /// <since_tizen> 3 </since_tizen>
102     public enum ResizePolicyType
103     {
104         /// <summary>
105         /// Size is fixed as set by SetSize.
106         /// </summary>
107         Fixed,
108         /// <summary>
109         /// Size is to use the actor's natural size.
110         /// </summary>
111         /// <see cref="ViewImpl.GetNaturalSize"/>
112         UseNaturalSize,
113         /// <summary>
114         /// Size is to fill up to the actor's parent's bounds. Aspect ratio is not maintained.
115         /// </summary>
116         FillToParent,
117         /// <summary>
118         /// The actors size will be ( ParentSize * SizeRelativeToParentFactor ).
119         /// </summary>
120         SizeRelativeToParent,
121         /// <summary>
122         /// The actors size will be ( ParentSize + SizeRelativeToParentFactor ).
123         /// </summary>
124         SizeFixedOffsetFromParent,
125         /// <summary>
126         /// The size will adjust to wrap around all children.
127         /// </summary>
128         FitToChildren,
129         /// <summary>
130         /// One dimension is dependent on the other.
131         /// </summary>
132         DimensionDependency,
133         /// <summary>
134         /// The size will be assigned to the actor.
135         /// </summary>
136         UseAssignedSize
137     }
138
139     /// <summary>
140     /// Enumeration for policies to determine how an actor should resize itself when having its size set in size negotiation.
141     /// </summary>
142     /// <since_tizen> 3 </since_tizen>
143     public enum SizeScalePolicyType
144     {
145         /// <summary>
146         /// Use the size that was set.
147         /// </summary>
148         UseSizeSet,
149         /// <summary>
150         /// Fit within the size set maintaining natural size aspect ratio.
151         /// </summary>
152         FitWithAspectRatio,
153         /// <summary>
154         /// Fit within the size set maintaining natural size aspect ratio.
155         /// </summary>
156         FillWithAspectRatio
157     }
158
159     /// <summary>
160     /// Enumeration for the ClippingMode describing how this actor's children will be clipped against it.
161     /// </summary>
162     /// <since_tizen> 3 </since_tizen>
163     public enum ClippingModeType
164     {
165         /// <summary>
166         /// This actor will not clip its children.
167         /// </summary>
168         Disabled,
169         /// <summary>
170         /// This actor will clip all children to within its boundaries (the actor will also be visible itself).
171         /// </summary>
172         ClipChildren
173     }
174
175     /// <summary>
176     /// Enumeration for type determination of how the camera operates.
177     /// </summary>
178     /// <since_tizen> 3 </since_tizen>
179     public enum CameraType
180     {
181         /// <summary>
182         /// Camera orientation is taken from the CameraActor.
183         /// </summary>
184         FreeLook,
185         /// <summary>
186         /// Camera is oriented to always look at a target.
187         /// </summary>
188         LookAtTarget
189     }
190
191     /// <summary>
192     /// Enumeration for the projection modes.
193     /// </summary>
194     /// <since_tizen> 3 </since_tizen>
195     public enum ProjectionMode
196     {
197         /// <summary>
198         /// Distance causes foreshortening; objects further from the camera appear smaller.
199         /// </summary>
200         PerspectiveProjection,
201         /// <summary>
202         /// Relative distance from the camera does not affect the size of objects.
203         /// </summary>
204         OrthographicProjection
205     }
206
207     /// <summary>
208     /// This specifies customView behavior types.
209     /// </summary>
210     /// <since_tizen> 3 </since_tizen>
211     public enum CustomViewBehaviour
212     {
213         /// <summary>
214         /// Use to provide default behavior (size negotiation is on, event callbacks are not called).
215         /// </summary>
216         ViewBehaviourDefault = 0,
217         /// <summary>
218         /// True if the control does not need size negotiation, i.e., it can be skipped in the algorithm.
219         /// </summary>
220         DisableSizeNegotiation = 1 << 0,
221         /// <summary>
222         /// Use to provide key navigation support.
223         /// </summary>
224         RequiresKeyboardNavigationSupport = 1 << 5,
225         /// <summary>
226         /// Use to make style change event disabled.
227         /// </summary>
228         DisableStyleChangeSignals = 1 << 6,
229         [EditorBrowsable(EditorBrowsableState.Never)]
230         LastViewBehaviourFlag
231     }
232
233     /// <since_tizen> 3 </since_tizen>
234     public enum DeviceClassType
235     {
236         None,
237         Seat,
238         Keyboard,
239         Mouse,
240         Touch,
241         Pen,
242         Pointer,
243         Gamepad
244     }
245
246     /// <summary>
247     /// This specifies all the property types.<br>
248     /// Enumeration for the property types supported.
249     /// </summary>
250     /// <since_tizen> 3 </since_tizen>
251     public enum PropertyType
252     {
253         /// <summary>
254         /// No type.
255         /// </summary>
256         None,
257         /// <summary>
258         /// A boolean type.
259         /// </summary>
260         Boolean,
261         /// <summary>
262         /// A float type.
263         /// </summary>
264         Float,
265         /// <summary>
266         /// An integer type.
267         /// </summary>
268         Integer,
269         /// <summary>
270         /// A vector array of size=2 with float precision.
271         /// </summary>
272         Vector2,
273         /// <summary>
274         /// A vector array of size=3 with float precision.
275         /// </summary>
276         Vector3,
277         /// <summary>
278         /// A vector array of size=4 with float precision.
279         /// </summary>
280         Vector4,
281         /// <summary>
282         /// A 3x3 matrix.
283         /// </summary>
284         Matrix3,
285         /// <summary>
286         /// A 4x4 matrix.
287         /// </summary>
288         Matrix,
289         /// <summary>
290         /// An integer array of size=4.
291         /// </summary>
292         Rectangle,
293         /// <summary>
294         /// Either a quaternion or an axis angle rotation.
295         /// </summary>
296         Rotation,
297         /// <summary>
298         /// A string type.
299         /// </summary>
300         String,
301         /// <summary>
302         /// An array of PropertyValue.
303         /// </summary>
304         Array,
305         /// <summary>
306         /// A string key to PropertyValue mapping.
307         /// </summary>
308         Map
309     }
310
311     /// <summary>
312     /// This specifies the property access mode types.<br>
313     /// Enumeration for the access mode for custom properties.
314     /// </summary>
315     /// <since_tizen> 3 </since_tizen>
316     public enum PropertyAccessMode
317     {
318         /// <summary>
319         /// If the property is read-only.
320         /// </summary>
321         ReadOnly,
322         /// <summary>
323         /// If the property is read or writeable.
324         /// </summary>
325         ReadWrite,
326         /// <summary>
327         /// If the property can be animated or constrained.
328         /// </summary>
329         Animatable,
330         /// <summary>
331         /// The number of access modes.
332         /// </summary>
333         AccessModeCount
334     }
335
336     /// <summary>
337     /// Types of style change. Enumeration for the StyleChange type.
338     /// </summary>
339     /// <since_tizen> 3 </since_tizen>
340     public enum StyleChangeType
341     {
342         /// <summary>
343         /// Denotes that the default font has changed.
344         /// </summary>
345         DefaultFontChange,
346         /// <summary>
347         /// Denotes that the default font size has changed.
348         /// </summary>
349         DefaultFontSizeChange,
350         /// <summary>
351         /// Denotes that the theme has changed.
352         /// </summary>
353         ThemeChange
354     }
355
356     /// <summary>
357     /// Enumeration for horizontal alignment types.
358     /// </summary>
359     /// <since_tizen> 3 </since_tizen>
360     public enum HorizontalAlignmentType
361     {
362         /// <summary>
363         /// Align horizontally left.
364         /// </summary>
365         Left,
366         /// <summary>
367         /// Align horizontally center.
368         /// </summary>
369         Center,
370         /// <summary>
371         /// Align horizontally right.
372         /// </summary>
373         Right
374     }
375
376     /// <summary>
377     /// Enumeration for vertical alignment types.
378     /// </summary>
379     /// <since_tizen> 3 </since_tizen>
380     public enum VerticalAlignmentType
381     {
382         /// <summary>
383         /// Align vertically top.
384         /// </summary>
385         Top,
386         /// <summary>
387         /// Align vertically center.
388         /// </summary>
389         Center,
390         /// <summary>
391         /// Align vertically bottom.
392         /// </summary>
393         Bottom
394     }
395
396     /// <summary>
397     /// Enumeration for point state type.
398     /// </summary>
399     /// <since_tizen> 3 </since_tizen>
400     public enum PointStateType
401     {
402         /// <summary>
403         /// Touch or hover started.
404         /// </summary>
405         Started,
406         /// <summary>
407         /// Touch or hover finished.
408         /// </summary>
409         Finished,
410         /// <summary>
411         /// Screen touched.
412         /// </summary>
413         Down = Started,
414         /// <summary>
415         /// Touch stopped.
416         /// </summary>
417         Up = Finished,
418         /// <summary>
419         /// Finger dragged or hovered.
420         /// </summary>
421         Motion,
422         /// <summary>
423         /// Leave the boundary of an actor.
424         /// </summary>
425         Leave,
426         /// <summary>
427         /// No change from last event. <br>
428         /// 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.
429         /// </summary>
430         Stationary,
431         /// <summary>
432         /// A system event has occurred which has interrupted the touch or hover event sequence.
433         /// </summary>
434         Interrupted
435     }
436
437     /// <summary>
438     /// Enumeration for the text horizontal aligning.
439     /// </summary>
440     /// <since_tizen> 3 </since_tizen>
441     public enum HorizontalAlignment
442     {
443         /// <summary>
444         /// Texts place at the begin of horizontal direction.
445         /// </summary>
446         Begin,
447         /// <summary>
448         /// Texts place at the center of horizontal direction.
449         /// </summary>
450         Center,
451         /// <summary>
452         /// Texts place at the end of horizontal direction.
453         /// </summary>
454         End
455     }
456
457     /// <summary>
458     /// Enumeration for the text horizontal aligning.
459     /// </summary>
460     /// <since_tizen> 3 </since_tizen>
461     public enum VerticalAlignment
462     {
463         /// <summary>
464         /// Texts place at the top of vertical direction.
465         /// </summary>
466         Top,
467         /// <summary>
468         /// Texts place at the center of vertical direction.
469         /// </summary>
470         Center,
471         /// <summary>
472         /// Texts place at the bottom of vertical direction.
473         /// </summary>
474         Bottom
475     }
476
477     /// <summary>
478     /// This specifies wrap mode types.<br>
479     /// 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.
480     /// </summary>
481     /// <since_tizen> 3 </since_tizen>
482     public enum WrapModeType
483     {
484         /// <summary>
485         /// The default value.
486         /// </summary>
487         Default = 0,
488         /// <summary>
489         /// Clamp to edge.
490         /// </summary>
491         ClampToEdge,
492         /// <summary>
493         /// Repeat.
494         /// </summary>
495         Repeat,
496         /// <summary>
497         /// Mirrored repeat.
498         /// </summary>
499         MirroredRepeat
500     }
501
502     /// <summary>
503     /// The type of coordinate system for certain attributes of the points in a gradient.
504     /// </summary>
505     /// <since_tizen> 3 </since_tizen>
506     public enum GradientVisualUnitsType
507     {
508         /// <summary>
509         /// 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).
510         /// </summary>
511         ObjectBoundingBox,
512         /// <summary>
513         /// 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).
514         /// </summary>
515         UserSpace
516     }
517
518     /// <summary>
519     /// This specifies SpreadMethod types.<br>
520     /// SpreadMethod defines what happens if the gradient starts or ends inside the bounds of the target rectangle.<br>
521     /// </summary>
522     /// <since_tizen> 3 </since_tizen>
523     public enum GradientVisualSpreadMethodType
524     {
525         /// <summary>
526         /// Uses the terminal colors of the gradient to fill the remainder of the quad.
527         /// </summary>
528         Pad,
529         /// <summary>
530         /// Reflects the gradient pattern start-to-end, end-to-start, start-to-end, etc. until the quad is filled.
531         /// </summary>
532         Reflect,
533         /// <summary>
534         /// Repeats the gradient pattern start-to-end, start-to-end, start-to-end, etc. until the quad is filled.
535         /// </summary>
536         Repeat
537     }
538
539     /// <summary>
540     /// The shading mode used by the mesh visual.
541     /// </summary>
542     /// <since_tizen> 3 </since_tizen>
543     public enum MeshVisualShadingModeValue
544     {
545         /// <summary>
546         /// *Simplest*. One color that is lit by ambient and diffuse lighting.
547         /// </summary>
548         TexturelessWithDiffuseLighting,
549         /// <summary>
550         /// Uses only the visual image textures provided with specular lighting in addition to ambient and diffuse lighting.
551         /// </summary>
552         TexturedWithSpecularLighting,
553         /// <summary>
554         /// Uses all textures provided including gloss, normal, and texture map along with specular, ambient, and diffuse lighting.
555         /// </summary>
556         TexturedWithDetailedSpecularLighting
557     }
558
559     /// <summary>
560     /// The primitive shape to render as a primitive visual.
561     /// </summary>
562     /// <since_tizen> 3 </since_tizen>
563     public enum PrimitiveVisualShapeType
564     {
565         /// <summary>
566         /// A perfectly round geometrical object in the three-dimensional space.
567         /// </summary>
568         Sphere,
569         /// <summary>
570         /// The area bound between two circles, i.e., a cone with the tip removed.
571         /// </summary>
572         ConicalFrustrum,
573         /// <summary>
574         /// Equivalent to a conical frustrum with the top radius of zero.
575         /// </summary>Equivalent to a conical frustrum with the top radius of zero.
576         Cone,
577         /// <summary>
578         /// Equivalent to a conical frustrum with the top radius of zero.
579         /// </summary>
580         Cylinder,
581         /// <summary>
582         /// Equivalent to a conical frustrum with equal radii for the top and bottom circles.
583         /// </summary>
584         Cube,
585         /// <summary>
586         /// Equivalent to a bevelled cube with a bevel percentage of zero.
587         /// </summary>
588         Octahedron,
589         /// <summary>
590         /// Equivalent to a bevelled cube with a bevel percentage of one.
591         /// </summary>
592         BevelledCube
593     }
594
595     /// <summary>
596     /// This specifies fitting mode types. Fitting options, used when resizing images to fit desired dimensions.<br>
597     /// A fitting mode controls the region of a loaded image to be mapped to the desired image rectangle.<br>
598     /// All fitting modes preserve the aspect ratio of the image contents.<br>
599     /// </summary>
600     /// <since_tizen> 3 </since_tizen>
601     public enum FittingModeType
602     {
603         /// <summary>
604         /// Full-screen image display: Limit loaded image resolution to device resolution using the ShrinkToFit mode.
605         /// </summary>
606         ShrinkToFit,
607         /// <summary>
608         /// Thumbnail gallery grid: Limit loaded image resolution to screen tile using the ScaleToFill mode.
609         /// </summary>
610         ScaleToFill,
611         /// <summary>
612         /// Image columns: Limit loaded image resolution to column width using the FitWidth mode.
613         /// </summary>
614         FitWidth,
615         /// <summary>
616         /// Image rows: Limit loaded image resolution to row height using the FitHeight mode.
617         /// </summary>
618         FitHeight
619     }
620
621     /// <summary>
622     /// This specifies sampling mode types. Filtering options are used when resizing images to sample original pixels.<br>
623     /// A SamplingMode controls how pixels in an input image are sampled and combined to generate each pixel of a destination image during scaling.<br>
624     /// 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>
625     /// but all other filter modes do if the desired dimensions are `<=` the raw dimensions of the input image file.<br>
626     /// </summary>
627     /// <since_tizen> 3 </since_tizen>
628     public enum SamplingModeType
629     {
630         /// <summary>
631         /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size. <br>
632         /// This is the default.
633         /// </summary>
634         Box,
635         /// <summary>
636         /// For each output pixel, read one input pixel.
637         /// </summary>
638         Nearest,
639         /// <summary>
640         /// For each output pixel, read a quad of four input pixels and write a weighted average of them.
641         /// </summary>
642         Linear,
643         /// <summary>
644         /// Iteratively box filter to generate an image of 1/2, 1/4, 1/8, etc. width and height and approximately the desired size, <br>
645         /// then for each output pixel, read one pixel from the last level of box filtering.<br>
646         /// </summary>
647         BoxThenNearest,
648         /// <summary>
649         /// 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.
650         /// </summary>
651         BoxThenLinear,
652         /// <summary>
653         /// 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.
654         /// </summary>
655         NoFilter,
656         /// <summary>
657         /// For caching algorithms where a client strongly prefers a cache-hit to reuse a cached image.
658         /// </summary>
659         DontCare
660     }
661
662     /// <summary>
663     /// This specifies policy types that could be used by the transform for the offset or size.
664     /// </summary>
665     /// <since_tizen> 3 </since_tizen>
666     public enum VisualTransformPolicyType
667     {
668         /// <summary>
669         /// Relative to the control (percentage [0.0f to 1.0f] of the control).
670         /// </summary>
671         Relative = 0,
672         /// <summary>
673         /// Absolute value in world units.
674         /// </summary>
675         Absolute = 1
676     }
677
678     /// <summary>
679     /// This specifies all the transform property types.
680     /// </summary>
681     /// <since_tizen> 3 </since_tizen>
682     public enum VisualTransformPropertyType
683     {
684         /// <summary>
685         /// Offset of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
686         /// </summary>
687         Offset,
688         /// <summary>
689         /// Size of the visual, which can be either relative (percentage [0.0f to 1.0f] of the parent) or absolute (in world units).
690         /// </summary>
691         Size,
692         /// <summary>
693         /// The origin of the visual within its control area.
694         /// </summary>
695         Origin,
696         /// <summary>
697         /// The anchor-point of the visual.
698         /// </summary>
699         AnchorPoint,
700         /// <summary>
701         /// Whether the x or y offset values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
702         /// </summary>
703         OffsetPolicy,
704         /// <summary>
705         /// Whether the width or the height size values are relative (percentage [0.0f to 1.0f] of the control) or absolute (in world units).
706         /// </summary>
707         SizePolicy
708     }
709
710     /// <summary>
711     /// This specifies visual types.
712     /// </summary>
713     /// <since_tizen> 3 </since_tizen>
714     public struct Visual
715     {
716         /// <summary>
717         /// The index for the visual type.
718         /// </summary>
719         /// <since_tizen> 3 </since_tizen>
720         public enum Type
721         {
722             /// <summary>
723             /// Renders a solid color as an internal border to the control's quad.
724             /// </summary>
725             Border,
726             /// <summary>
727             /// Renders a solid color to the control's quad.
728             /// </summary>
729             Color,
730             /// <summary>
731             /// Renders a smooth transition of colors to the control's quad.
732             /// </summary>
733             Gradient,
734             /// <summary>
735             /// Renders an image into the control's quad.
736             /// </summary>
737             Image,
738             /// <summary>
739             /// Renders a mesh using an "obj" file, optionally with textures provided by an "mtl" file.
740             /// </summary>
741             Mesh,
742             /// <summary>
743             /// Renders a simple 3D shape, such as a cube or a sphere.
744             /// </summary>
745             Primitive,
746             /// <summary>
747             /// Renders a simple wire-frame outlining a quad.
748             /// </summary>
749             Wireframe,
750             /// <summary>
751             /// Renders text.
752             /// </summary>
753             Text,
754             /// <summary>
755             /// Renders an n-patch image.
756             /// </summary>
757             NPatch,
758             /// <summary>
759             /// Renders an SVG image.
760             /// </summary>
761             SVG,
762             /// <summary>
763             /// Renders a animated image (animated GIF).
764             /// </summary>
765             AnimatedImage
766         }
767
768         /// <summary>
769         /// This specifies visual properties.
770         /// </summary>
771         /// <since_tizen> 3 </since_tizen>
772         public struct Property
773         {
774             public static readonly int Type = NDalic.VISUAL_PROPERTY_TYPE;
775             public static readonly int Shader = NDalic.VISUAL_PROPERTY_SHADER;
776             public static readonly int Transform = NDalic.VISUAL_PROPERTY_TRANSFORM;
777             public static readonly int PremultipliedAlpha = NDalic.VISUAL_PROPERTY_PREMULTIPLIED_ALPHA;
778             public static readonly int MixColor = NDalic.VISUAL_PROPERTY_MIX_COLOR;
779             public static readonly int Opacity = NDalic.VISUAL_PROPERTY_MIX_COLOR + 1;
780         }
781
782         /// <summary>
783         /// This specifies shader properties.
784         /// </summary>
785         /// <since_tizen> 3 </since_tizen>
786         public struct ShaderProperty
787         {
788             public static readonly int VertexShader = NDalic.VISUAL_SHADER_VERTEX;
789             public static readonly int FragmentShader = NDalic.VISUAL_SHADER_FRAGMENT;
790             public static readonly int ShaderSubdivideGridX = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_X;
791             public static readonly int ShaderSubdivideGridY = NDalic.VISUAL_SHADER_SUBDIVIDE_GRID_Y;
792             public static readonly int ShaderHints = NDalic.VISUAL_SHADER_HINTS;
793         }
794
795         /// <summary>
796         /// This specifies visaul align types.
797         /// </summary>
798         /// <since_tizen> 3 </since_tizen>
799         public enum AlignType
800         {
801             TopBegin = 0,
802             TopCenter,
803             TopEnd,
804             CenterBegin,
805             Center,
806             CenterEnd,
807             BottomBegin,
808             BottomCenter,
809             BottomEnd
810         }
811     }
812
813     /// <summary>
814     /// This specifies properties of the BorderVisual.
815     /// </summary>
816     /// <since_tizen> 3 </since_tizen>
817     public struct BorderVisualProperty
818     {
819         public static readonly int Color = NDalic.BORDER_VISUAL_COLOR;
820         public static readonly int Size = NDalic.BORDER_VISUAL_SIZE;
821         public static readonly int AntiAliasing = NDalic.BORDER_VISUAL_ANTI_ALIASING;
822     }
823
824     /// <summary>
825     /// This specifies properties of the ColorVisual.
826     /// </summary>
827     /// <since_tizen> 3 </since_tizen>
828     public struct ColorVisualProperty
829     {
830         public static readonly int MixColor = NDalic.COLOR_VISUAL_MIX_COLOR;
831     }
832
833     /// <summary>
834     /// This specifies properties of the GradientVisual.
835     /// </summary>
836     /// <since_tizen> 3 </since_tizen>
837     public struct GradientVisualProperty
838     {
839         public static readonly int StartPosition = NDalic.GRADIENT_VISUAL_START_POSITION;
840         public static readonly int EndPosition = NDalic.GRADIENT_VISUAL_END_POSITION;
841         public static readonly int Center = NDalic.GRADIENT_VISUAL_CENTER;
842         public static readonly int Radius = NDalic.GRADIENT_VISUAL_RADIUS;
843         public static readonly int StopOffset = NDalic.GRADIENT_VISUAL_STOP_OFFSET;
844         public static readonly int StopColor = NDalic.GRADIENT_VISUAL_STOP_COLOR;
845         public static readonly int Units = NDalic.GRADIENT_VISUAL_UNITS;
846         public static readonly int SpreadMethod = NDalic.GRADIENT_VISUAL_SPREAD_METHOD;
847     }
848
849     /// <summary>
850     /// This specifies properties of the ImageVisual.
851     /// </summary>
852     /// <since_tizen> 3 </since_tizen>
853     public struct ImageVisualProperty
854     {
855         public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
856         public static readonly int AlphaMaskURL = NDalic.IMAGE_VISUAL_ALPHA_MASK_URL;
857         public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
858         public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
859         public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
860         public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
861         public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
862         public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
863         public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
864         public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
865         public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
866         public static readonly int Border = NDalic.IMAGE_VISUAL_BORDER;
867         public static readonly int MaskContentScale = NDalic.IMAGE_VISUAL_MASK_CONTENT_SCALE;
868         public static readonly int CropToMask = NDalic.IMAGE_VISUAL_CROP_TO_MASK;
869         public static readonly int BatchSize = NDalic.IMAGE_VISUAL_BATCH_SIZE;
870         public static readonly int CacheSize = NDalic.IMAGE_VISUAL_CACHE_SIZE;
871         public static readonly int FrameDelay = NDalic.IMAGE_VISUAL_FRAME_DELAY;
872
873     }
874
875     /// <summary>
876     /// This specifies properties of the MeshVisual.
877     /// </summary>
878     /// <since_tizen> 3 </since_tizen>
879     public struct MeshVisualProperty
880     {
881         public static readonly int ObjectURL = NDalic.MESH_VISUAL_OBJECT_URL;
882         public static readonly int MaterialtURL = NDalic.MESH_VISUAL_MATERIAL_URL;
883         public static readonly int TexturesPath = NDalic.MESH_VISUAL_TEXTURES_PATH;
884         public static readonly int ShadingMode = NDalic.MESH_VISUAL_SHADING_MODE;
885         public static readonly int UseMipmapping = NDalic.MESH_VISUAL_USE_MIPMAPPING;
886         public static readonly int UseSoftNormals = NDalic.MESH_VISUAL_USE_SOFT_NORMALS;
887         public static readonly int LightPosition = NDalic.MESH_VISUAL_LIGHT_POSITION;
888     }
889
890     /// <summary>
891     /// This specifies properties of the PrimitiveVisual.
892     /// </summary>
893     /// <since_tizen> 3 </since_tizen>
894     public struct PrimitiveVisualProperty
895     {
896         public static readonly int Shape = NDalic.PRIMITIVE_VISUAL_SHAPE;
897         public static readonly int MixColor = NDalic.PRIMITIVE_VISUAL_MIX_COLOR;
898         public static readonly int Slices = NDalic.PRIMITIVE_VISUAL_SLICES;
899         public static readonly int Stacks = NDalic.PRIMITIVE_VISUAL_STACKS;
900         public static readonly int ScaleTopRadius = NDalic.PRIMITIVE_VISUAL_SCALE_TOP_RADIUS;
901         public static readonly int ScaleBottomRadius = NDalic.PRIMITIVE_VISUAL_SCALE_BOTTOM_RADIUS;
902         public static readonly int ScaleHeight = NDalic.PRIMITIVE_VISUAL_SCALE_HEIGHT;
903         public static readonly int ScaleRadius = NDalic.PRIMITIVE_VISUAL_SCALE_RADIUS;
904         public static readonly int ScaleDimensions = NDalic.PRIMITIVE_VISUAL_SCALE_DIMENSIONS;
905         public static readonly int BevelPercentage = NDalic.PRIMITIVE_VISUAL_BEVEL_PERCENTAGE;
906         public static readonly int BevelSmoothness = NDalic.PRIMITIVE_VISUAL_BEVEL_SMOOTHNESS;
907         public static readonly int LightPosition = NDalic.PRIMITIVE_VISUAL_LIGHT_POSITION;
908     }
909
910     /// <summary>
911     /// This specifies properties of the TextVisual.
912     /// </summary>
913     /// <since_tizen> 3 </since_tizen>
914     public struct TextVisualProperty
915     {
916         public static readonly int Text = NDalic.TEXT_VISUAL_TEXT;
917         public static readonly int FontFamily = NDalic.TEXT_VISUAL_FONT_FAMILY;
918         public static readonly int FontStyle = NDalic.TEXT_VISUAL_FONT_STYLE;
919         public static readonly int PointSize = NDalic.TEXT_VISUAL_POINT_SIZE;
920         public static readonly int MultiLine = NDalic.TEXT_VISUAL_MULTI_LINE;
921         public static readonly int HorizontalAlignment = NDalic.TEXT_VISUAL_HORIZONTAL_ALIGNMENT;
922         public static readonly int VerticalAlignment = NDalic.TEXT_VISUAL_VERTICAL_ALIGNMENT;
923         public static readonly int TextColor = NDalic.TEXT_VISUAL_TEXT_COLOR;
924         public static readonly int EnableMarkup = NDalic.TEXT_VISUAL_ENABLE_MARKUP;
925     }
926
927     /// <summary>
928     /// This specifies properties of the NpatchImageVisual.
929     /// </summary>
930     /// <since_tizen> 3 </since_tizen>
931     public struct NpatchImageVisualProperty
932     {
933         public static readonly int URL = NDalic.IMAGE_VISUAL_URL;
934         public static readonly int FittingMode = NDalic.IMAGE_VISUAL_FITTING_MODE;
935         public static readonly int SamplingMode = NDalic.IMAGE_VISUAL_SAMPLING_MODE;
936         public static readonly int DesiredWidth = NDalic.IMAGE_VISUAL_DESIRED_WIDTH;
937         public static readonly int DesiredHeight = NDalic.IMAGE_VISUAL_DESIRED_HEIGHT;
938         public static readonly int SynchronousLoading = NDalic.IMAGE_VISUAL_SYNCHRONOUS_LOADING;
939         public static readonly int BorderOnly = NDalic.IMAGE_VISUAL_BORDER_ONLY;
940         public static readonly int PixelArea = NDalic.IMAGE_VISUAL_PIXEL_AREA;
941         public static readonly int WrapModeU = NDalic.IMAGE_VISUAL_WRAP_MODE_U;
942         public static readonly int WrapModeV = NDalic.IMAGE_VISUAL_WRAP_MODE_V;
943         public static readonly int Border = NDalic.IMAGE_VISUAL_WRAP_MODE_V + 1;
944     }
945
946     /// <summary>
947     /// The HiddenInput property.
948     /// </summary>
949     /// <since_tizen> 3 </since_tizen>
950     public struct HiddenInputProperty
951     {
952         public static readonly int Mode = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_MODE_get();
953         public static readonly int SubstituteCharacter = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SUBSTITUTE_CHARACTER_get();
954         public static readonly int SubstituteCount = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SUBSTITUTE_COUNT_get();
955         public static readonly int ShowDuration = NDalicManualPINVOKE.HIDDENINPUT_PROPERTY_SHOW_DURATION_get();
956     }
957
958     /// <summary>
959     /// The type for HiddenInput mode.
960     /// </summary>
961     /// <since_tizen> 3 </since_tizen>
962     public enum HiddenInputModeType
963     {
964         /// <summary>
965         /// Don't hide text.
966         /// </summary>
967         HideNone,
968         /// <summary>
969         /// Hide all the input text.
970         /// </summary>
971         HideAll,
972         /// <summary>
973         /// Hide n characters from start.
974         /// </summary>
975         HideCount,
976         /// <summary>
977         /// Show n characters from start.
978         /// </summary>
979         ShowCount,
980         /// <summary>
981         /// Show last character for the duration (use ShowDuration property to modify duration).
982         /// </summary>
983         ShowLastCharacter
984     }
985
986     /// <summary>
987     /// ParentOrigin constants.
988     /// </summary>
989     /// <since_tizen> 3 </since_tizen>
990     public struct ParentOrigin
991     {
992         public static float Top
993         {
994             get
995             {
996                 float ret = NDalicPINVOKE.ParentOriginTop_get();
997                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
998                 return ret;
999             }
1000         }
1001         public static float Bottom
1002         {
1003             get
1004             {
1005                 float ret = NDalicPINVOKE.ParentOriginBottom_get();
1006                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1007                 return ret;
1008             }
1009         }
1010         public static float Left
1011         {
1012             get
1013             {
1014                 float ret = NDalicPINVOKE.ParentOriginLeft_get();
1015                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1016                 return ret;
1017             }
1018         }
1019         public static float Right
1020         {
1021             get
1022             {
1023                 float ret = NDalicPINVOKE.ParentOriginRight_get();
1024                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1025                 return ret;
1026             }
1027         }
1028         public static float Middle
1029         {
1030             get
1031             {
1032                 float ret = NDalicPINVOKE.ParentOriginMiddle_get();
1033                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1034                 return ret;
1035             }
1036         }
1037         public static Position TopLeft
1038         {
1039             get
1040             {
1041                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopLeft_get();
1042                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1043                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1044                 return ret;
1045             }
1046         }
1047         public static Position TopCenter
1048         {
1049             get
1050             {
1051                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopCenter_get();
1052                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1053                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1054                 return ret;
1055             }
1056         }
1057         public static Position TopRight
1058         {
1059             get
1060             {
1061                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopRight_get();
1062                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1063                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1064                 return ret;
1065             }
1066         }
1067         public static Position CenterLeft
1068         {
1069             get
1070             {
1071                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterLeft_get();
1072                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1073                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1074                 return ret;
1075             }
1076         }
1077         public static Position Center
1078         {
1079             get
1080             {
1081                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenter_get();
1082                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1083                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1084                 return ret;
1085             }
1086         }
1087         public static Position CenterRight
1088         {
1089             get
1090             {
1091                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterRight_get();
1092                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1093                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1094                 return ret;
1095             }
1096         }
1097         public static Position BottomLeft
1098         {
1099             get
1100             {
1101                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomLeft_get();
1102                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1103                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1104                 return ret;
1105             }
1106         }
1107         public static Position BottomCenter
1108         {
1109             get
1110             {
1111                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomCenter_get();
1112                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1113                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1114                 return ret;
1115             }
1116         }
1117         public static Position BottomRight
1118         {
1119             get
1120             {
1121                 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomRight_get();
1122                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1123                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1124                 return ret;
1125             }
1126         }
1127     }
1128
1129     /// <summary>
1130     /// PivotPoint constants.
1131     /// </summary>
1132     /// <since_tizen> 3 </since_tizen>
1133     public struct PivotPoint
1134     {
1135         public static float Top
1136         {
1137             get
1138             {
1139                 float ret = NDalicPINVOKE.AnchorPointTop_get();
1140                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1141                 return ret;
1142             }
1143         }
1144         public static float Bottom
1145         {
1146             get
1147             {
1148                 float ret = NDalicPINVOKE.AnchorPointBottom_get();
1149                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1150                 return ret;
1151             }
1152         }
1153         public static float Left
1154         {
1155             get
1156             {
1157                 float ret = NDalicPINVOKE.AnchorPointLeft_get();
1158                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1159                 return ret;
1160             }
1161         }
1162         public static float Right
1163         {
1164             get
1165             {
1166                 float ret = NDalicPINVOKE.AnchorPointRight_get();
1167                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1168                 return ret;
1169             }
1170         }
1171         public static float Middle
1172         {
1173             get
1174             {
1175                 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
1176                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1177                 return ret;
1178             }
1179         }
1180         public static Position TopLeft
1181         {
1182             get
1183             {
1184                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
1185                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1186                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1187                 return ret;
1188             }
1189         }
1190         public static Position TopCenter
1191         {
1192             get
1193             {
1194                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
1195                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1196                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1197                 return ret;
1198             }
1199         }
1200         public static Position TopRight
1201         {
1202             get
1203             {
1204                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
1205                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1206                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1207                 return ret;
1208             }
1209         }
1210         public static Position CenterLeft
1211         {
1212             get
1213             {
1214                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
1215                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1216                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1217                 return ret;
1218             }
1219         }
1220         public static Position Center
1221         {
1222             get
1223             {
1224                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
1225                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1226                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1227                 return ret;
1228             }
1229         }
1230         public static Position CenterRight
1231         {
1232             get
1233             {
1234                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
1235                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1236                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1237                 return ret;
1238             }
1239         }
1240         public static Position BottomLeft
1241         {
1242             get
1243             {
1244                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
1245                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1246                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1247                 return ret;
1248             }
1249         }
1250         public static Position BottomCenter
1251         {
1252             get
1253             {
1254                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
1255                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1256                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1257                 return ret;
1258             }
1259         }
1260         public static Position BottomRight
1261         {
1262             get
1263             {
1264                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
1265                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1266                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1267                 return ret;
1268             }
1269         }
1270     }
1271     /// <summary>
1272     /// PositionAxis constants.
1273     /// </summary>
1274     /// <since_tizen> 3 </since_tizen>
1275     public struct PositionAxis
1276     {
1277         public static Position X
1278         {
1279             get
1280             {
1281                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_XAXIS_get();
1282                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1283                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1284                 return ret;
1285             }
1286         }
1287         public static Position Y
1288         {
1289             get
1290             {
1291                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_YAXIS_get();
1292                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1293                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1294                 return ret;
1295             }
1296         }
1297         public static Position Z
1298         {
1299             get
1300             {
1301                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZAXIS_get();
1302                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1303                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1304                 return ret;
1305             }
1306         }
1307         public static Position NegativeX
1308         {
1309             get
1310             {
1311                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_XAXIS_get();
1312                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1313                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1314                 return ret;
1315             }
1316         }
1317         public static Position NegativeY
1318         {
1319             get
1320             {
1321                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_YAXIS_get();
1322                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1323                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1324                 return ret;
1325             }
1326         }
1327         public static Position NegativeZ
1328         {
1329             get
1330             {
1331                 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_ZAXIS_get();
1332                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1333                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1334                 return ret;
1335             }
1336         }
1337     }
1338
1339     /// <summary>
1340     /// Auto scrolling stop behavior.
1341     /// </summary>
1342     /// <since_tizen> 3 </since_tizen>
1343     public enum AutoScrollStopMode
1344     {
1345         /// <summary>
1346         /// Stop animation after current loop finished.
1347         /// </summary>
1348         FinishLoop,
1349         /// <summary>
1350         /// Stop animation immediately and reset position.
1351         /// </summary>
1352         Immediate
1353     }
1354
1355     /// <summary>
1356     /// An enum of screen mode.
1357     /// </summary>
1358     /// <since_tizen> 3 </since_tizen>
1359     public enum ScreenMode {
1360         /// <summary>
1361         /// The mode which turns the screen off after a timeout.
1362         /// </summary>
1363         Default,
1364         /// <summary>
1365         /// The mode which keeps the screen turned on.
1366         /// </summary>
1367         AlwaysOn
1368     }
1369
1370     /// <summary>
1371     /// An enum of notification window's priority level.
1372     /// </summary>
1373     /// <since_tizen> 3 </since_tizen>
1374     public enum NotificationLevel {
1375         /// <summary>
1376         /// No notification level.<br>
1377         /// Default level.<br>
1378         /// This value makes the notification window place in the layer of the normal window.
1379         /// </summary>
1380         None = -1,
1381         /// <summary>
1382         /// The base nofitication level.
1383         /// </summary>
1384         Base = 10,
1385         /// <summary>
1386         /// The medium notification level than base.
1387         /// </summary>
1388         Medium = 20,
1389         /// <summary>
1390         /// The higher notification level than medium.
1391         /// </summary>
1392         High = 30,
1393         /// <summary>
1394         /// The highest notification level.
1395         /// </summary>
1396         Top = 40
1397     }
1398
1399     /// <summary>
1400     /// An enum of window types.
1401     /// </summary>
1402     /// <since_tizen> 3 </since_tizen>
1403     public enum WindowType {
1404         /// <summary>
1405         /// A default window type.<br>
1406         /// Indicates a normal or top-level window.
1407         /// Almost every window will be created with this type.
1408         /// </summary>
1409         Normal,
1410         /// <summary>
1411         /// A notification window, like a warning about battery life or a new email received.
1412         /// </summary>
1413         Notification,
1414         /// <summary>
1415         /// A persistent utility window, like a toolbox or a palette.
1416         /// </summary>
1417         Utility,
1418         /// <summary>
1419         /// Used for simple dialog windows.
1420         /// </summary>
1421         Dialog
1422     }
1423
1424     /// <since_tizen> 3 </since_tizen>
1425     public enum DisposeTypes
1426     {
1427         Explicit,   //Called By User
1428         Implicit,   //Called by DisposeQueue
1429     }
1430
1431
1432
1433
1434     [Obsolete("Please do not use! this will be deprecated")]
1435     public struct AnchorPoint
1436     {
1437         public static float Top
1438         {
1439             get
1440             {
1441                 float ret = NDalicPINVOKE.AnchorPointTop_get();
1442                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1443                 return ret;
1444             }
1445         }
1446         public static float Bottom
1447         {
1448             get
1449             {
1450                 float ret = NDalicPINVOKE.AnchorPointBottom_get();
1451                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1452                 return ret;
1453             }
1454         }
1455         public static float Left
1456         {
1457             get
1458             {
1459                 float ret = NDalicPINVOKE.AnchorPointLeft_get();
1460                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1461                 return ret;
1462             }
1463         }
1464         public static float Right
1465         {
1466             get
1467             {
1468                 float ret = NDalicPINVOKE.AnchorPointRight_get();
1469                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1470                 return ret;
1471             }
1472         }
1473         public static float Middle
1474         {
1475             get
1476             {
1477                 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
1478                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1479                 return ret;
1480             }
1481         }
1482         public static Position TopLeft
1483         {
1484             get
1485             {
1486                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
1487                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1488                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1489                 return ret;
1490             }
1491         }
1492         public static Position TopCenter
1493         {
1494             get
1495             {
1496                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
1497                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1498                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1499                 return ret;
1500             }
1501         }
1502         public static Position TopRight
1503         {
1504             get
1505             {
1506                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
1507                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1508                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1509                 return ret;
1510             }
1511         }
1512         public static Position CenterLeft
1513         {
1514             get
1515             {
1516                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
1517                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1518                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1519                 return ret;
1520             }
1521         }
1522         public static Position Center
1523         {
1524             get
1525             {
1526                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
1527                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1528                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1529                 return ret;
1530             }
1531         }
1532         public static Position CenterRight
1533         {
1534             get
1535             {
1536                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
1537                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1538                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1539                 return ret;
1540             }
1541         }
1542         public static Position BottomLeft
1543         {
1544             get
1545             {
1546                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
1547                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1548                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1549                 return ret;
1550             }
1551         }
1552         public static Position BottomCenter
1553         {
1554             get
1555             {
1556                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
1557                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1558                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1559                 return ret;
1560             }
1561         }
1562         public static Position BottomRight
1563         {
1564             get
1565             {
1566                 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
1567                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1568                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1569                 return ret;
1570             }
1571         }
1572     }
1573
1574     /// <summary>
1575     /// An enum of the scroll state of the text eidtor.
1576     /// </summary>
1577     /// <since_tizen> 3 </since_tizen>
1578     public enum ScrollState
1579     {
1580         /// <summary>
1581         /// Scrolling is started.
1582         /// </summary>
1583         Started,
1584
1585         /// <summary>
1586         /// Scrolling is finished.
1587         /// </summary>
1588         Finished
1589     }
1590
1591      /// <summary>
1592     /// An enum of the line wrap mode of text controls.
1593     /// </summary>
1594     /// <since_tizen> 4 </since_tizen>
1595     public enum LineWrapMode
1596     {
1597         /// <summary>
1598         /// The word mode will move a word to the next line.
1599         /// </summary>
1600         Word,
1601
1602         /// <summary>
1603         /// character will move character by character to the next line.
1604         /// </summary>
1605         Character
1606     }
1607
1608 }