[NUI] Add Constraint base + inhouse ResizePolicyType: KeepSizeFollowingParent
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / Common / NUIConstants.cs
1 // Copyright (c) 2019 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 using System.Diagnostics.CodeAnalysis;
18
19 namespace Tizen.NUI
20 {
21     /// <summary>
22     /// This specifies all the scroll mode type.
23     /// </summary>
24     /// <since_tizen> 3 </since_tizen>
25     public enum ScrollModeType
26     {
27         /// <summary>
28         /// Whether the content can be scrolled along the X axis or not.
29         /// </summary>
30         /// <since_tizen> 3 </since_tizen>
31         XAxisScrollEnabled,
32         /// <summary>
33         /// When set, causes scroll view to snap to multiples of the
34         /// value of the interval while flicking along the X axis.
35         /// </summary>
36         /// <since_tizen> 3 </since_tizen>
37         XAxisSnapToInterval,
38         /// <summary>
39         /// When set, the scroll view is unable to scroll beyond the
40         /// value of the boundary along the X axis.
41         /// </summary>
42         /// <since_tizen> 3 </since_tizen>
43         XAxisScrollBoundary,
44         /// <summary>
45         /// Whether the content can be scrolled along the Y axis or not.
46         /// </summary>
47         /// <since_tizen> 3 </since_tizen>
48         YAxisScrollEnabled,
49         /// <summary>
50         /// When set, causes scroll view to snap to multiples of the
51         /// value of the interval while flicking along the Y axis.
52         /// </summary>
53         /// <since_tizen> 3 </since_tizen>
54         YAxisSnapToInterval,
55         /// <summary>
56         /// When set, the scroll view is unable to scroll beyond the
57         /// value of the boundary along the Y axis.
58         /// </summary>
59         /// <since_tizen> 3 </since_tizen>
60         YAxisScrollBoundary
61     }
62
63     /// <summary>
64     /// This specifies whether the actor uses its own color or inherits.
65     /// </summary>
66     /// <since_tizen> 3 </since_tizen>
67     public enum ColorMode
68     {
69         /// <summary>
70         /// Actor will use its own color.
71         /// </summary>
72         UseOwnColor,
73         /// <summary>
74         /// Actor will use its parent color.
75         /// </summary>
76         UseParentColor,
77         /// <summary>
78         /// Actor will blend its color with its parents color.
79         /// </summary>
80         UseOwnMultiplyParentColor,
81         /// <summary>
82         /// 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.
83         /// </summary>
84         UseOwnMultiplyParentAlpha
85     }
86
87     /// <summary>
88     /// This specifies the dimension of the width or the height for size negotiation.
89     /// </summary>
90     /// <since_tizen> 3 </since_tizen>
91     public enum DimensionType
92     {
93         /// <summary>
94         /// Width dimension.
95         /// </summary>
96         Width = 0x1,
97         /// <summary>
98         /// Height dimension.
99         /// </summary>
100         Height = 0x2,
101         /// <summary>
102         /// Mask to cover all flags.
103         /// </summary>
104         AllDimensions = 0x3
105     }
106
107     /// <summary>
108     /// Enumeration for the instance of how the actor and it's children will be drawn.
109     /// </summary>
110     /// <since_tizen> 3 </since_tizen>
111     public enum DrawModeType
112     {
113         /// <summary>
114         /// The default draw-mode.
115         /// </summary>
116         [Description("NORMAL")]
117         Normal = 0,
118         /// <summary>
119         /// Draw the actor and its children as an overlay.
120         /// </summary>
121         [Description("OVERLAY_2D")]
122         Overlay2D = 1,
123
124         /// <summary>
125         /// Will be replaced by separate ClippingMode enum. Draw the actor and its children into the stencil buffer.
126         /// </summary>
127         /// <remarks>
128         /// Deprecated.(API Level 6) Not used.
129         /// </remarks>
130         [Obsolete("Please do not use this DrawModeType.Stencil(Deprecated). This is replaced by ClippingModeType")]
131         [Description("STENCIL")]
132         Stencil = 3
133     }
134
135     /// <summary>
136     /// Enumeration for size negotiation resize policies.
137     /// </summary>
138     /// <since_tizen> 3 </since_tizen>
139     public enum ResizePolicyType
140     {
141         /// <summary>
142         /// Size is fixed as set by SetSize.
143         /// </summary>
144         [Description("FIXED")]
145         Fixed,
146         /// <summary>
147         /// Size is to use the actor's natural size.
148         /// </summary>
149         /// <see cref="ViewImpl.GetNaturalSize"/>
150         [Description("USE_NATURAL_SIZE")]
151         UseNaturalSize,
152         /// <summary>
153         /// Size is to fill up to the actor's parent's bounds. Aspect ratio is not maintained.
154         /// </summary>
155         [Description("FILL_TO_PARENT")]
156         FillToParent,
157         /// <summary>
158         /// The actors size will be ( ParentSize * SizeRelativeToParentFactor ).
159         /// </summary>
160         [Description("SIZE_RELATIVE_TO_PARENT")]
161         SizeRelativeToParent,
162         /// <summary>
163         /// The actors size will be ( ParentSize + SizeRelativeToParentFactor ).
164         /// </summary>
165         [Description("SIZE_FIXED_OFFSET_FROM_PARENT")]
166         SizeFixedOffsetFromParent,
167         /// <summary>
168         /// The size will adjust to wrap around all children.
169         /// </summary>
170         [Description("FIT_TO_CHILDREN")]
171         FitToChildren,
172         /// <summary>
173         /// One dimension is dependent on the other.
174         /// </summary>
175         [Description("DIMENSION_DEPENDENCY")]
176         DimensionDependency,
177         /// <summary>
178         /// The size will be assigned to the actor.
179         /// </summary>
180         [Description("USE_ASSIGNED_SIZE")]
181         UseAssignedSize,
182
183         /// <summary>
184         /// The size always equal with parent even parent has size animation.
185         /// Note : This Property only working without layout. If layout is setup, Undefined Behavior
186         /// </summary>
187         /// <remarks>Hidden API: Only for inhouse or developing usage. The behavior and interface can be changed anytime.</remarks>
188         [EditorBrowsable(EditorBrowsableState.Never)]
189         KeepSizeFollowingParent
190     }
191
192     /// <summary>
193     /// Enumeration for policies to determine how an actor should resize itself when having its size set in size negotiation.
194     /// </summary>
195     /// <since_tizen> 3 </since_tizen>
196     public enum SizeScalePolicyType
197     {
198         /// <summary>
199         /// Use the size that was set.
200         /// </summary>
201         [Description("USE_SIZE_SET")]
202         UseSizeSet,
203         /// <summary>
204         /// Fit within the size set maintaining natural size aspect ratio.
205         /// </summary>
206         [Description("FIT_WITH_ASPECT_RATIO")]
207         FitWithAspectRatio,
208         /// <summary>
209         /// Fit within the size set maintaining natural size aspect ratio.
210         /// </summary>
211         [Description("FILL_WITH_ASPECT_RATIO")]
212         FillWithAspectRatio
213     }
214
215     /// <summary>
216     /// Enumeration for the ClippingMode describing how this actor's children will be clipped against it.
217     /// </summary>
218     /// <since_tizen> 3 </since_tizen>
219     public enum ClippingModeType
220     {
221         /// <summary>
222         /// This actor will not clip its children.
223         /// </summary>
224         Disabled,
225         /// <summary>
226         /// This actor will clip all children to within its boundaries (the actor will also be visible itself).
227         /// </summary>
228         ClipChildren,
229         /// <summary>
230         /// This Actor will clip all children within a screen-aligned rectangle encompassing its boundaries (the actor will also be visible itself).
231         /// </summary>
232         /// <since_tizen> 4 </since_tizen>
233         ClipToBoundingBox
234     }
235
236     /// <summary>
237     /// Enumeration for type determination of how the camera operates.
238     /// </summary>
239     /// <since_tizen> 3 </since_tizen>
240     public enum CameraType
241     {
242         /// <summary>
243         /// Camera orientation is taken from the CameraActor.
244         /// </summary>
245         FreeLook,
246         /// <summary>
247         /// Camera is oriented to always look at a target.
248         /// </summary>
249         LookAtTarget
250     }
251
252     /// <summary>
253     /// Enumeration for the projection modes.
254     /// </summary>
255     /// <since_tizen> 3 </since_tizen>
256     public enum ProjectionMode
257     {
258         /// <summary>
259         /// Distance causes foreshortening; objects further from the camera appear smaller.
260         /// </summary>
261         PerspectiveProjection,
262         /// <summary>
263         /// Relative distance from the camera does not affect the size of objects.
264         /// </summary>
265         OrthographicProjection
266     }
267
268     /// <summary>
269     /// This specifies customView behavior types.
270     /// </summary>
271     /// <since_tizen> 3 </since_tizen>
272     public enum CustomViewBehaviour
273     {
274         /// <summary>
275         /// Use to provide default behavior (size negotiation is on, event callbacks are not called).
276         /// </summary>
277         ViewBehaviourDefault = 0,
278         /// <summary>
279         /// True if the control does not need size negotiation, i.e., it can be skipped in the algorithm.
280         /// </summary>
281         DisableSizeNegotiation = 1 << 0,
282         /// <summary>
283         /// True if OnTouch() callback is required.
284         /// </summary>
285         /// <since_tizen> 6 </since_tizen>
286         /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
287         [EditorBrowsable(EditorBrowsableState.Never)]
288         RequiresTouchEventsSupport = 1 << 1,
289         /// <summary>
290         /// True if OnHover() callback is required.
291         /// </summary>
292         /// <since_tizen> 6 </since_tizen>
293         /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
294         [EditorBrowsable(EditorBrowsableState.Never)]
295         RequiresHoverEventsSupport = 1 << 2,
296         /// <summary>
297         /// True if OnWheel() callback is required.
298         /// </summary>
299         /// <since_tizen> 6 </since_tizen>
300         /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
301         [EditorBrowsable(EditorBrowsableState.Never)]
302         RequiresWheelEventsSupport = 1 << 3,
303         /// <summary>
304         /// Use to provide key navigation support.
305         /// </summary>
306         RequiresKeyboardNavigationSupport = 1 << 5,
307         /// <summary>
308         /// Use to make style change event disabled.
309         /// </summary>
310         DisableStyleChangeSignals = 1 << 6,
311         /// <summary>
312         /// Please do not use! This will be deprecated!
313         /// </summary>
314         /// <since_tizen> 3 </since_tizen>
315         [Obsolete("Please do not use! This will be deprecated!")]
316         [EditorBrowsable(EditorBrowsableState.Never)]
317         LastViewBehaviourFlag
318     }
319
320     /// <summary>
321     /// An enum of Device Class types.
322     /// </summary>
323     /// <since_tizen> 3 </since_tizen>
324     /// Can't fix because it's already used by other GBM.
325     [SuppressMessage("Microsoft.Naming", "CA1720: Identifiers should not contain type names")]
326     public enum DeviceClassType
327     {
328         /// <summary>
329         /// Not a device.
330         /// </summary>
331         /// <since_tizen> 3 </since_tizen>
332         None,
333         /// <summary>
334         /// The user/seat (the user themselves).
335         /// </summary>
336         /// <since_tizen> 3 </since_tizen>
337         Seat,
338         /// <summary>
339         /// A regular keyboard, numberpad or attached buttons.
340         /// </summary>
341         /// <since_tizen> 3 </since_tizen>
342         Keyboard,
343         /// <summary>
344         /// A mouse, trackball or touchpad relative motion device.
345         /// </summary>
346         /// <since_tizen> 3 </since_tizen>
347         Mouse,
348         /// <summary>
349         /// A touchscreen with fingers or stylus.
350         /// </summary>
351         /// <since_tizen> 3 </since_tizen>
352         Touch,
353         /// <summary>
354         /// A special pen device.
355         /// </summary>
356         /// <since_tizen> 3 </since_tizen>
357         Pen,
358         /// <summary>
359         ///  A pointing device based on laser, infrared or similar technology.
360         /// </summary>
361         /// <since_tizen> 3 </since_tizen>
362         Pointer,
363         /// <summary>
364         /// A gamepad controller or joystick.
365         /// </summary>
366         /// <since_tizen> 3 </since_tizen>
367         Gamepad
368     }
369
370     /// <summary>
371     /// An enum of Device Subclass types.
372     /// </summary>
373     /// <since_tizen> 4 </since_tizen>
374     public enum DeviceSubClassType
375     {
376         /// <summary>
377         /// Not a device
378         /// </summary>
379         /// <since_tizen> 4 </since_tizen>
380         None,
381         /// <summary>
382         /// The normal flat of your finger
383         /// </summary>
384         /// <since_tizen> 4 </since_tizen>
385         Finger,
386         /// <summary>
387         /// A fingernail
388         /// </summary>
389         /// <since_tizen> 4 </since_tizen>
390         Fingernail,
391         /// <summary>
392         /// A Knuckle
393         /// </summary>
394         /// <since_tizen> 4 </since_tizen>
395         Knuckle,
396         /// <summary>
397         /// The palm of a users hand
398         /// </summary>
399         /// <since_tizen> 4 </since_tizen>
400         Palm,
401         /// <summary>
402         /// The side of your hand
403         /// </summary>
404         /// <since_tizen> 4 </since_tizen>
405         HandSide,
406         /// <summary>
407         /// The flat of your hand
408         /// </summary>
409         /// <since_tizen> 4 </since_tizen>
410         HandFlat,
411         /// <summary>
412         /// The tip of a pen
413         /// </summary>
414         /// <since_tizen> 4 </since_tizen>
415         PenTip,
416         /// <summary>
417         /// A trackpad style mouse
418         /// </summary>
419         /// <since_tizen> 4 </since_tizen>
420         Trackpad,
421         /// <summary>
422         /// A trackpoint style mouse
423         /// </summary>
424         /// <since_tizen> 4 </since_tizen>
425         Trackpoint,
426         /// <summary>
427         /// A trackball style mouse
428         /// </summary>
429         /// <since_tizen> 4 </since_tizen>
430         Trackball,
431         /// <summary>
432         /// A remote controller
433         /// </summary>
434         /// <since_tizen> 4 </since_tizen>
435         Remocon,
436         /// <summary>
437         /// A virtual keyboard
438         /// </summary>
439         /// <since_tizen> 4 </since_tizen>
440         VirtualKeyboard
441     }
442
443     /// <summary>
444     /// This specifies all the property types.<br />
445     /// Enumeration for the property types supported.
446     /// </summary>
447     /// <since_tizen> 3 </since_tizen>
448     /// Can't fix because it's already used by other GBM.
449     [SuppressMessage("Microsoft.Naming", "CA1720: Identifiers should not contain type names")]
450     public enum PropertyType
451     {
452         /// <summary>
453         /// No type.
454         /// </summary>
455         None,
456         /// <summary>
457         /// A boolean type.
458         /// </summary>
459         Boolean,
460         /// <summary>
461         /// A float type.
462         /// </summary>
463         Float,
464         /// <summary>
465         /// An integer type.
466         /// </summary>
467         Integer,
468         /// <summary>
469         /// A vector array of size=2 with float precision.
470         /// </summary>
471         Vector2,
472         /// <summary>
473         /// A vector array of size=3 with float precision.
474         /// </summary>
475         Vector3,
476         /// <summary>
477         /// A vector array of size=4 with float precision.
478         /// </summary>
479         Vector4,
480         /// <summary>
481         /// A 3x3 matrix.
482         /// </summary>
483         Matrix3,
484         /// <summary>
485         /// A 4x4 matrix.
486         /// </summary>
487         Matrix,
488         /// <summary>
489         /// An integer array of size=4.
490         /// </summary>
491         Rectangle,
492         /// <summary>
493         /// Either a quaternion or an axis angle rotation.
494         /// </summary>
495         Rotation,
496         /// <summary>
497         /// A string type.
498         /// </summary>
499         String,
500         /// <summary>
501         /// An array of PropertyValue.
502         /// </summary>
503         Array,
504         /// <summary>
505         /// A string key to PropertyValue mapping.
506         /// </summary>
507         Map,
508         /// <summary>
509         /// An extents type.
510         /// </summary>
511         /// <since_tizen> 4 </since_tizen>
512         Extents
513     }
514
515     /// <summary>
516     /// This specifies the property access mode types.<br />
517     /// Enumeration for the access mode for custom properties.
518     /// </summary>
519     /// <since_tizen> 3 </since_tizen>
520     public enum PropertyAccessMode
521     {
522         /// <summary>
523         /// If the property is read-only.
524         /// </summary>
525         ReadOnly,
526         /// <summary>
527         /// If the property is read or writeable.
528         /// </summary>
529         ReadWrite,
530         /// <summary>
531         /// If the property can be animated or constrained.
532         /// </summary>
533         Animatable,
534         /// <summary>
535         /// The number of access modes.
536         /// </summary>
537         AccessModeCount
538     }
539
540     /// <summary>
541     /// Types of style change. Enumeration for the StyleChange type.
542     /// </summary>
543     /// <since_tizen> 3 </since_tizen>
544     [Obsolete("Deprecated in API9, Will be removed in API11.")]
545     public enum StyleChangeType
546     {
547         /// <summary>
548         /// Denotes that the default font has changed.
549         /// </summary>
550         [Obsolete("Deprecated in API9, Will be removed in API11.")]
551         DefaultFontChange,
552         /// <summary>
553         /// Denotes that the default font size has changed.
554         /// </summary>
555         [Obsolete("Deprecated in API9, Will be removed in API11.")]
556         DefaultFontSizeChange,
557         /// <summary>
558         /// Denotes that the theme has changed.
559         /// </summary>
560         [Obsolete("Deprecated in API9, Will be removed in API11.")]
561         ThemeChange
562     }
563
564     /// <summary>
565     /// Enumeration for horizontal alignment types.
566     /// </summary>
567     /// <since_tizen> 3 </since_tizen>
568     public enum HorizontalAlignmentType
569     {
570         /// <summary>
571         /// Align horizontally left.
572         /// </summary>
573         [Description("left")]
574         Left,
575         /// <summary>
576         /// Align horizontally center.
577         /// </summary>
578         [Description("center")]
579         Center,
580         /// <summary>
581         /// Align horizontally right.
582         /// </summary>
583         [Description("right")]
584         Right
585     }
586
587     /// <summary>
588     /// Enumeration for vertical alignment types.
589     /// </summary>
590     /// <since_tizen> 3 </since_tizen>
591     public enum VerticalAlignmentType
592     {
593         /// <summary>
594         /// Align vertically top.
595         /// </summary>
596         [Description("top")]
597         Top,
598         /// <summary>
599         /// Align vertically center.
600         /// </summary>
601         [Description("center")]
602         Center,
603         /// <summary>
604         /// Align vertically bottom.
605         /// </summary>
606         [Description("bottom")]
607         Bottom
608     }
609
610     /// <summary>
611     /// Enumeration for point state type.
612     /// </summary>
613     /// <since_tizen> 3 </since_tizen>
614     public enum PointStateType
615     {
616         /// <summary>
617         /// Touch or hover started.
618         /// </summary>
619         Started,
620         /// <summary>
621         /// Touch or hover finished.
622         /// </summary>
623         Finished,
624         /// <summary>
625         /// Screen touched.
626         /// </summary>
627         Down = Started,
628         /// <summary>
629         /// Touch stopped.
630         /// </summary>
631         Up = Finished,
632         /// <summary>
633         /// Finger dragged or hovered.
634         /// </summary>
635         Motion,
636         /// <summary>
637         /// Leave the boundary of an actor.
638         /// </summary>
639         Leave,
640         /// <summary>
641         /// No change from last event. <br />
642         /// 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.
643         /// </summary>
644         Stationary,
645         /// <summary>
646         /// A system event has occurred which has interrupted the touch or hover event sequence.
647         /// </summary>
648         Interrupted
649     }
650
651     /// <summary>
652     /// The type for HiddenInput mode.
653     /// </summary>
654     /// <since_tizen> 3 </since_tizen>
655     public enum HiddenInputModeType
656     {
657         /// <summary>
658         /// Don't hide text.
659         /// </summary>
660         HideNone,
661         /// <summary>
662         /// Hide all the input text.
663         /// </summary>
664         HideAll,
665         /// <summary>
666         /// Hide n characters from start.
667         /// </summary>
668         HideCount,
669         /// <summary>
670         /// Show n characters from start.
671         /// </summary>
672         ShowCount,
673         /// <summary>
674         /// Show last character for the duration(use ShowLastCharacterDuration property to modify duration).
675         /// </summary>
676         ShowLastCharacter
677     }
678
679     /// <summary>
680     /// Auto scrolling stop behavior.
681     /// </summary>
682     /// <since_tizen> 3 </since_tizen>
683     public enum AutoScrollStopMode
684     {
685         /// <summary>
686         /// Stop animation after current loop finished.
687         /// </summary>
688         [Description("FINISH_LOOP")]
689         FinishLoop,
690         /// <summary>
691         /// Stop animation immediately and reset position.
692         /// </summary>
693         [Description("IMMEDIATE")]
694         Immediate
695     }
696
697     /// <summary>
698     /// An enum of screen mode.
699     /// </summary>
700     /// <since_tizen> 4 </since_tizen>
701     public enum ScreenOffMode
702     {
703         /// <summary>
704         /// The mode which turns the screen off after a timeout.
705         /// </summary>
706         Timout,
707         /// <summary>
708         /// The mode which keeps the screen turned on.
709         /// </summary>
710         Never
711     }
712
713     /// <summary>
714     /// An enum of notification window's priority level.
715     /// </summary>
716     /// <since_tizen> 3 </since_tizen>
717     public enum NotificationLevel
718     {
719         /// <summary>
720         /// No notification level.<br />
721         /// Default level.<br />
722         /// This value makes the notification window place in the layer of the normal window.
723         /// </summary>
724         None = -1,
725         /// <summary>
726         /// The base notification level.
727         /// </summary>
728         Base = 10,
729         /// <summary>
730         /// The medium notification level than base.
731         /// </summary>
732         Medium = 20,
733         /// <summary>
734         /// The higher notification level than medium.
735         /// </summary>
736         High = 30,
737         /// <summary>
738         /// The highest notification level.
739         /// </summary>
740         Top = 40
741     }
742
743     /// <summary>
744     /// An enum of window types.
745     /// </summary>
746     /// <since_tizen> 3 </since_tizen>
747     public enum WindowType
748     {
749         /// <summary>
750         /// A default window type.<br />
751         /// Indicates a normal or top-level window.
752         /// Almost every window will be created with this type.
753         /// </summary>
754         Normal,
755         /// <summary>
756         /// A notification window, like a warning about battery life or a new email received.
757         /// </summary>
758         Notification,
759         /// <summary>
760         /// A persistent utility window, like a toolbox or a palette.
761         /// </summary>
762         Utility,
763         /// <summary>
764         /// Used for simple dialog windows.
765         /// </summary>
766         Dialog,
767         /// <summary>
768         /// Used for IME window that is used for keyboard window.
769         /// It should be set in Application's New input param when application is created.
770         /// In addition, it is only for internal keyboard application.
771         /// This should be hidden.
772         /// </summary>
773         [EditorBrowsable(EditorBrowsableState.Never)]
774         Ime
775     }
776
777     /// <since_tizen> 3 </since_tizen>
778     [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1717:Only FlagsAttribute enums should have plural names")]
779     public enum DisposeTypes
780     {
781         /// <summary>
782         /// Called By User
783         /// </summary>
784         /// <since_tizen> 3 </since_tizen>
785         Explicit,
786         /// <summary>
787         /// Called by DisposeQueue
788         /// </summary>
789         /// <since_tizen> 3 </since_tizen>
790         Implicit,
791     }
792
793     /// <summary>
794     /// An enum of the scroll state of the text editor.
795     /// </summary>
796     /// <since_tizen> 3 </since_tizen>
797     public enum ScrollState
798     {
799         /// <summary>
800         /// Scrolling is started.
801         /// </summary>
802         Started,
803
804         /// <summary>
805         /// Scrolling is finished.
806         /// </summary>
807         Finished
808     }
809
810     /// <summary>
811     /// An enum of the line wrap mode of text controls.
812     /// </summary>
813     /// <since_tizen> 4 </since_tizen>
814     public enum LineWrapMode
815     {
816         /// <summary>
817         /// The word mode will move a word to the next line.
818         /// </summary>
819         /// <since_tizen> 4 </since_tizen>
820         Word,
821
822         /// <summary>
823         /// character will move character by character to the next line.
824         /// </summary>
825         /// <since_tizen> 4 </since_tizen>
826         Character,
827
828         /// <summary>
829         /// Hyphenation mode will move part of the word (at possible hyphen locations)
830         /// to the next line and draw a hyphen at the end of the line.
831         /// </summary>
832         [EditorBrowsable(EditorBrowsableState.Never)]
833         Hyphenation,
834
835         /// <summary>
836         /// Mixed mode will try word wrap, if failed, it will try hyphenation wrap.
837         /// </summary>
838         [EditorBrowsable(EditorBrowsableState.Never)]
839         Mixed
840     }
841
842     /// <summary>
843     /// An enum of text directions.
844     /// </summary>
845     /// <since_tizen> 5 </since_tizen>
846     public enum TextDirection
847     {
848         /// <summary>
849         /// Text direction is from left to right.
850         /// </summary>
851         /// <since_tizen> 5 </since_tizen>
852         LeftToRight,
853
854         /// <summary>
855         /// Text direction is from right to left.
856         /// </summary>
857         /// <since_tizen> 5 </since_tizen>
858         RightToLeft
859     }
860
861     /// <summary>
862     /// An enum of vertical line alignments.
863     /// </summary>
864     /// <since_tizen> 5 </since_tizen>
865     public enum VerticalLineAlignment
866     {
867         /// <summary>
868         /// vertical line alignment is from top.
869         /// </summary>
870         /// <since_tizen> 5 </since_tizen>
871         Top,
872
873         /// <summary>
874         /// vertical line alignment is from center.
875         /// </summary>
876         /// <since_tizen> 5 </since_tizen>
877         Center,
878
879         /// <summary>
880         /// vertical line alignment is from bottom.
881         /// </summary>
882         /// <since_tizen> 5 </since_tizen>
883         Bottom
884     }
885
886     /// <summary>
887     /// Enumeration type for the font's slant.
888     /// </summary>
889     /// <since_tizen> 5 </since_tizen>
890     public enum FontSlantType
891     {
892         /// <summary>
893         /// None.
894         /// </summary>
895         /// <since_tizen> 5 </since_tizen>
896         None,
897         /// <summary>
898         /// Normal.
899         /// </summary>
900         /// <since_tizen> 5 </since_tizen>
901         Normal,
902         /// <summary>
903         /// Roman.
904         /// </summary>
905         /// <since_tizen> 5 </since_tizen>
906         Roman = Normal,
907         /// <summary>
908         /// Italic.
909         /// </summary>
910         /// <since_tizen> 5 </since_tizen>
911         Italic,
912         /// <summary>
913         /// Oblique.
914         /// </summary>
915         /// <since_tizen> 5 </since_tizen>
916         Oblique
917     }
918
919     /// <summary>
920     /// Enumeration type for the font's weight.
921     /// </summary>
922     /// <since_tizen> 5 </since_tizen>
923     public enum FontWeightType
924     {
925         /// <summary>
926         /// None.
927         /// </summary>
928         /// <since_tizen> 5 </since_tizen>
929         None,
930         /// <summary>
931         /// Thin.
932         /// </summary>
933         /// <since_tizen> 5 </since_tizen>
934         Thin,
935         /// <summary>
936         /// UltraLight.
937         /// </summary>
938         /// <since_tizen> 5 </since_tizen>
939         UltraLight,
940         /// <summary>
941         /// ExtraLight.
942         /// </summary>
943         /// <since_tizen> 5 </since_tizen>
944         ExtraLight = UltraLight,
945         /// <summary>
946         /// Light.
947         /// </summary>
948         /// <since_tizen> 5 </since_tizen>
949         Light,
950         /// <summary>
951         /// DemiLight.
952         /// </summary>
953         /// <since_tizen> 5 </since_tizen>
954         DemiLight,
955         /// <summary>
956         /// SemiLight.
957         /// </summary>
958         /// <since_tizen> 5 </since_tizen>
959         SemiLight = DemiLight,
960         /// <summary>
961         /// Book.
962         /// </summary>
963         /// <since_tizen> 5 </since_tizen>
964         Book,
965         /// <summary>
966         /// Normal.
967         /// </summary>
968         /// <since_tizen> 5 </since_tizen>
969         Normal,
970         /// <summary>
971         /// Regular.
972         /// </summary>
973         /// <since_tizen> 5 </since_tizen>
974         Regular = Normal,
975         /// <summary>
976         /// Medium.
977         /// </summary>
978         /// <since_tizen> 5 </since_tizen>
979         Medium,
980         /// <summary>
981         /// DemiBold.
982         /// </summary>
983         /// <since_tizen> 5 </since_tizen>
984         DemiBold,
985         /// <summary>
986         /// SemiBold.
987         /// </summary>
988         /// <since_tizen> 5 </since_tizen>
989         SemiBold = DemiBold,
990         /// <summary>
991         /// Bold.
992         /// </summary>
993         /// <since_tizen> 5 </since_tizen>
994         Bold,
995         /// <summary>
996         /// UltraBold.
997         /// </summary>
998         /// <since_tizen> 5 </since_tizen>
999         UltraBold,
1000         /// <summary>
1001         /// ExtraBold.
1002         /// </summary>
1003         /// <since_tizen> 5 </since_tizen>
1004         ExtraBold = UltraBold,
1005         /// <summary>
1006         /// Black.
1007         /// </summary>
1008         /// <since_tizen> 5 </since_tizen>
1009         Black,
1010         /// <summary>
1011         /// Heavy.
1012         /// </summary>
1013         /// <since_tizen> 5 </since_tizen>
1014         Heavy = Black,
1015         /// <summary>
1016         /// ExtraBlack.
1017         /// </summary>
1018         /// <since_tizen> 5 </since_tizen>
1019         ExtraBlack = Black
1020     }
1021
1022     /// <summary>
1023     /// Enumeration type for the font's width.
1024     /// </summary>
1025     /// <since_tizen> 5 </since_tizen>
1026     public enum FontWidthType
1027     {
1028         /// <summary>
1029         /// None.
1030         /// </summary>
1031         /// <since_tizen> 5 </since_tizen>
1032         None,
1033         /// <summary>
1034         /// UltraCondensed.
1035         /// </summary>
1036         /// <since_tizen> 5 </since_tizen>
1037         UltraCondensed,
1038         /// <summary>
1039         /// ExtraCondensed.
1040         /// </summary>
1041         /// <since_tizen> 5 </since_tizen>
1042         ExtraCondensed,
1043         /// <summary>
1044         /// Condensed.
1045         /// </summary>
1046         /// <since_tizen> 5 </since_tizen>
1047         Condensed,
1048         /// <summary>
1049         /// SemiCondensed.
1050         /// </summary>
1051         /// <since_tizen> 5 </since_tizen>
1052         SemiCondensed,
1053         /// <summary>
1054         /// Normal.
1055         /// </summary>
1056         /// <since_tizen> 5 </since_tizen>
1057         Normal,
1058         /// <summary>
1059         /// SemiExpanded.
1060         /// </summary>
1061         /// <since_tizen> 5 </since_tizen>
1062         SemiExpanded,
1063         /// <summary>
1064         /// Expanded.
1065         /// </summary>
1066         /// <since_tizen> 5 </since_tizen>
1067         Expanded,
1068         /// <summary>
1069         /// ExtraExpanded.
1070         /// </summary>
1071         /// <since_tizen> 5 </since_tizen>
1072         ExtraExpanded,
1073         /// <summary>
1074         /// UltraExpanded.
1075         /// </summary>
1076         /// <since_tizen> 5 </since_tizen>
1077         UltraExpanded
1078     }
1079
1080     /// <summary>
1081     /// Enumeration type for the glyph type.
1082     /// </summary>
1083     /// <since_tizen> 5 </since_tizen>
1084     public enum GlyphType
1085     {
1086         /// <summary>
1087         /// Glyph stored as pixels.
1088         /// </summary>
1089         /// <since_tizen> 5 </since_tizen>
1090         BitmapGlyph,
1091         /// <summary>
1092         /// Glyph stored as vectors (scalable). This feature requires highp shader support and is not available on all platforms.
1093         /// </summary>
1094         /// <since_tizen> 5 </since_tizen>
1095         VectorGlyph
1096     }
1097
1098     /// <summary>
1099     /// Enumeration for Setting the rendering behavior of a Window.
1100     /// </summary>
1101     /// <since_tizen> 5 </since_tizen>
1102     public enum RenderingBehaviorType
1103     {
1104         /// <summary>
1105         /// Default. Only renders if required.
1106         /// </summary>
1107         IfRequired,
1108         /// <summary>
1109         /// Renders continuously.
1110         /// </summary>
1111         Continuously
1112     }
1113
1114     /// <summary>
1115     /// The HiddenInput property.
1116     /// </summary>
1117     /// <since_tizen> 3 </since_tizen>
1118     public struct HiddenInputProperty
1119     {
1120         /// <summary>
1121         /// The mode for input text display.
1122         /// </summary>
1123         /// <since_tizen> 3 </since_tizen>
1124         public static readonly int Mode = NDalicManualPINVOKE.HiddeninputPropertyModeGet();
1125         /// <summary>
1126         /// All input characters are substituted by this character.
1127         /// </summary>
1128         /// <since_tizen> 3 </since_tizen>
1129         public static readonly int SubstituteCharacter = NDalicManualPINVOKE.HiddeninputPropertySubstituteCharacterGet();
1130         /// <summary>
1131         /// Length of text to show or hide, available when HIDE_COUNT/SHOW_COUNT mode is used.
1132         /// </summary>
1133         /// <since_tizen> 3 </since_tizen>
1134         public static readonly int SubstituteCount = NDalicManualPINVOKE.HiddeninputPropertySubstituteCountGet();
1135         /// <summary>
1136         /// Hide last character after this duration, available when SHOW_LAST_CHARACTER mode.
1137         /// </summary>
1138         /// <since_tizen> 4 </since_tizen>
1139         public static readonly int ShowLastCharacterDuration = NDalicManualPINVOKE.HiddeninputPropertyShowLastCharacterDurationGet();
1140     }
1141
1142     /// <summary>
1143     /// ParentOrigin constants.
1144     /// </summary>
1145     /// <since_tizen> 3 </since_tizen>
1146     public struct ParentOrigin
1147     {
1148         /// <summary>
1149         /// Top
1150         /// </summary>
1151         /// <since_tizen> 3 </since_tizen>
1152         public static float Top
1153         {
1154             get
1155             {
1156                 float ret = Interop.NDalicParentOrigin.ParentOriginTopGet();
1157                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1158                 return ret;
1159             }
1160         }
1161
1162         /// <summary>
1163         /// Bottom
1164         /// </summary>
1165         /// <since_tizen> 3 </since_tizen>
1166         public static float Bottom
1167         {
1168             get
1169             {
1170                 float ret = Interop.NDalicParentOrigin.ParentOriginBottomGet();
1171                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1172                 return ret;
1173             }
1174         }
1175
1176         /// <summary>
1177         /// Left
1178         /// </summary>
1179         /// <since_tizen> 3 </since_tizen>
1180         public static float Left
1181         {
1182             get
1183             {
1184                 float ret = Interop.NDalicParentOrigin.ParentOriginLeftGet();
1185                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1186                 return ret;
1187             }
1188         }
1189
1190         /// <summary>
1191         /// Right
1192         /// </summary>
1193         /// <since_tizen> 3 </since_tizen>
1194         public static float Right
1195         {
1196             get
1197             {
1198                 float ret = Interop.NDalicParentOrigin.ParentOriginRightGet();
1199                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1200                 return ret;
1201             }
1202         }
1203
1204         /// <summary>
1205         /// Middle
1206         /// </summary>
1207         /// <since_tizen> 3 </since_tizen>
1208         public static float Middle
1209         {
1210             get
1211             {
1212                 float ret = Interop.NDalicParentOrigin.ParentOriginMiddleGet();
1213                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1214                 return ret;
1215             }
1216         }
1217
1218         /// <summary>
1219         /// TopLeft
1220         /// </summary>
1221         /// <since_tizen> 3 </since_tizen>
1222         public static Position TopLeft
1223         {
1224             get
1225             {
1226                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginTopLeftGet();
1227                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1228                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1229                 return ret;
1230             }
1231         }
1232
1233         /// <summary>
1234         /// TopCenter
1235         /// </summary>
1236         /// <since_tizen> 3 </since_tizen>
1237         public static Position TopCenter
1238         {
1239             get
1240             {
1241                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginTopCenterGet();
1242                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1243                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1244                 return ret;
1245             }
1246         }
1247
1248         /// <summary>
1249         /// TopRight
1250         /// </summary>
1251         /// <since_tizen> 3 </since_tizen>
1252         public static Position TopRight
1253         {
1254             get
1255             {
1256                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginTopRightGet();
1257                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1258                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1259                 return ret;
1260             }
1261         }
1262
1263         /// <summary>
1264         /// CenterLeft
1265         /// </summary>
1266         /// <since_tizen> 3 </since_tizen>
1267         public static Position CenterLeft
1268         {
1269             get
1270             {
1271                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginCenterLeftGet();
1272                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1273                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1274                 return ret;
1275             }
1276         }
1277
1278         /// <summary>
1279         /// Center
1280         /// </summary>
1281         /// <since_tizen> 3 </since_tizen>
1282         public static Position Center
1283         {
1284             get
1285             {
1286                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginCenterGet();
1287                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1288                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1289                 return ret;
1290             }
1291         }
1292
1293         /// <summary>
1294         /// CenterRight
1295         /// </summary>
1296         /// <since_tizen> 3 </since_tizen>
1297         public static Position CenterRight
1298         {
1299             get
1300             {
1301                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginCenterRightGet();
1302                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1303                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1304                 return ret;
1305             }
1306         }
1307
1308         /// <summary>
1309         /// BottomLeft
1310         /// </summary>
1311         /// <since_tizen> 3 </since_tizen>
1312         public static Position BottomLeft
1313         {
1314             get
1315             {
1316                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginBottomLeftGet();
1317                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1318                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1319                 return ret;
1320             }
1321         }
1322
1323         /// <summary>
1324         /// BottomCenter
1325         /// </summary>
1326         /// <since_tizen> 3 </since_tizen>
1327         public static Position BottomCenter
1328         {
1329             get
1330             {
1331                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginBottomCenterGet();
1332                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1333                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1334                 return ret;
1335             }
1336         }
1337
1338         /// <summary>
1339         /// BottomRight
1340         /// </summary>
1341         /// <since_tizen> 3 </since_tizen>
1342         public static Position BottomRight
1343         {
1344             get
1345             {
1346                 global::System.IntPtr cPtr = Interop.NDalicParentOrigin.ParentOriginBottomRightGet();
1347                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1348                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1349                 return ret;
1350             }
1351         }
1352     }
1353
1354     /// <summary>
1355     /// PivotPoint constants.
1356     /// </summary>
1357     /// <since_tizen> 3 </since_tizen>
1358     public struct PivotPoint
1359     {
1360         /// <summary>
1361         /// Top
1362         /// </summary>
1363         /// <since_tizen> 3 </since_tizen>
1364         public static float Top
1365         {
1366             get
1367             {
1368                 float ret = Interop.NDalicAnchorPoint.AnchorPointTopGet();
1369                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1370                 return ret;
1371             }
1372         }
1373         /// <summary>
1374         /// Bottom
1375         /// </summary>
1376         /// <since_tizen> 3 </since_tizen>
1377         public static float Bottom
1378         {
1379             get
1380             {
1381                 float ret = Interop.NDalicAnchorPoint.AnchorPointBottomGet();
1382                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1383                 return ret;
1384             }
1385         }
1386         /// <summary>
1387         /// Left
1388         /// </summary>
1389         /// <since_tizen> 3 </since_tizen>
1390         public static float Left
1391         {
1392             get
1393             {
1394                 float ret = Interop.NDalicAnchorPoint.AnchorPointLeftGet();
1395                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1396                 return ret;
1397             }
1398         }
1399         /// <summary>
1400         /// Right
1401         /// </summary>
1402         /// <since_tizen> 3 </since_tizen>
1403         public static float Right
1404         {
1405             get
1406             {
1407                 float ret = Interop.NDalicAnchorPoint.AnchorPointRightGet();
1408                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1409                 return ret;
1410             }
1411         }
1412         /// <summary>
1413         /// Middle
1414         /// </summary>
1415         /// <since_tizen> 3 </since_tizen>
1416         public static float Middle
1417         {
1418             get
1419             {
1420                 float ret = Interop.NDalicAnchorPoint.AnchorPointMiddleGet();
1421                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1422                 return ret;
1423             }
1424         }
1425         /// <summary>
1426         /// TopLeft
1427         /// </summary>
1428         /// <since_tizen> 3 </since_tizen>
1429         public static Position TopLeft
1430         {
1431             get
1432             {
1433                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointTopLeftGet();
1434                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1435                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1436                 return ret;
1437             }
1438         }
1439         /// <summary>
1440         /// TopCenter
1441         /// </summary>
1442         /// <since_tizen> 3 </since_tizen>
1443         public static Position TopCenter
1444         {
1445             get
1446             {
1447                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointTopCenterGet();
1448                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1449                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1450                 return ret;
1451             }
1452         }
1453         /// <summary>
1454         /// TopRight
1455         /// </summary>
1456         /// <since_tizen> 3 </since_tizen>
1457         public static Position TopRight
1458         {
1459             get
1460             {
1461                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointTopRightGet();
1462                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1463                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1464                 return ret;
1465             }
1466         }
1467         /// <summary>
1468         /// CenterLeft
1469         /// </summary>
1470         /// <since_tizen> 3 </since_tizen>
1471         public static Position CenterLeft
1472         {
1473             get
1474             {
1475                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointCenterLeftGet();
1476                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1477                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1478                 return ret;
1479             }
1480         }
1481         /// <summary>
1482         /// Center
1483         /// </summary>
1484         /// <since_tizen> 3 </since_tizen>
1485         public static Position Center
1486         {
1487             get
1488             {
1489                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointCenterGet();
1490                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1491                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1492                 return ret;
1493             }
1494         }
1495         /// <summary>
1496         /// CenterRight
1497         /// </summary>
1498         /// <since_tizen> 3 </since_tizen>
1499         public static Position CenterRight
1500         {
1501             get
1502             {
1503                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointCenterRightGet();
1504                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1505                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1506                 return ret;
1507             }
1508         }
1509         /// <summary>
1510         /// BottomLeft
1511         /// </summary>
1512         /// <since_tizen> 3 </since_tizen>
1513         public static Position BottomLeft
1514         {
1515             get
1516             {
1517                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointBottomLeftGet();
1518                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1519                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1520                 return ret;
1521             }
1522         }
1523         /// <summary>
1524         /// BottomCenter
1525         /// </summary>
1526         /// <since_tizen> 3 </since_tizen>
1527         public static Position BottomCenter
1528         {
1529             get
1530             {
1531                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointBottomCenterGet();
1532                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1533                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1534                 return ret;
1535             }
1536         }
1537         /// <summary>
1538         /// BottomRight
1539         /// </summary>
1540         /// <since_tizen> 3 </since_tizen>
1541         public static Position BottomRight
1542         {
1543             get
1544             {
1545                 global::System.IntPtr cPtr = Interop.NDalicAnchorPoint.AnchorPointBottomRightGet();
1546                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1547                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1548                 return ret;
1549             }
1550         }
1551     }
1552     /// <summary>
1553     /// PositionAxis constants.
1554     /// </summary>
1555     /// <since_tizen> 3 </since_tizen>
1556     public struct PositionAxis
1557     {
1558         /// <summary>
1559         /// The X axis
1560         /// </summary>
1561         /// <since_tizen> 3 </since_tizen>
1562         public static Position X
1563         {
1564             get
1565             {
1566                 global::System.IntPtr cPtr = Interop.Vector3.XaxisGet();
1567                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1568                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1569                 return ret;
1570             }
1571         }
1572         /// <summary>
1573         /// The Y axis
1574         /// </summary>
1575         /// <since_tizen> 3 </since_tizen>
1576         public static Position Y
1577         {
1578             get
1579             {
1580                 global::System.IntPtr cPtr = Interop.Vector3.YaxisGet();
1581                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1582                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1583                 return ret;
1584             }
1585         }
1586         /// <summary>
1587         /// The Z axis
1588         /// </summary>
1589         /// <since_tizen> 3 </since_tizen>
1590         public static Position Z
1591         {
1592             get
1593             {
1594                 global::System.IntPtr cPtr = Interop.Vector3.ZaxisGet();
1595                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1596                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1597                 return ret;
1598             }
1599         }
1600         /// <summary>
1601         /// The Negative X axis
1602         /// </summary>
1603         /// <since_tizen> 3 </since_tizen>
1604         public static Position NegativeX
1605         {
1606             get
1607             {
1608                 global::System.IntPtr cPtr = Interop.Vector3.NegativeXaxisGet();
1609                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1610                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1611                 return ret;
1612             }
1613         }
1614         /// <summary>
1615         /// The Negative Y axis
1616         /// </summary>
1617         /// <since_tizen> 3 </since_tizen>
1618         public static Position NegativeY
1619         {
1620             get
1621             {
1622                 global::System.IntPtr cPtr = Interop.Vector3.NegativeYaxisGet();
1623                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1624                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1625                 return ret;
1626             }
1627         }
1628         /// <summary>
1629         /// The Negative Z axis
1630         /// </summary>
1631         /// <since_tizen> 3 </since_tizen>
1632         public static Position NegativeZ
1633         {
1634             get
1635             {
1636                 global::System.IntPtr cPtr = Interop.Vector3.NegativeZaxisGet();
1637                 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
1638                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw new InvalidOperationException("FATAL: get Exception", NDalicPINVOKE.SWIGPendingException.Retrieve());
1639                 return ret;
1640             }
1641         }
1642     }
1643
1644     /// <summary>
1645     /// [Obsolete("Please do not use! this will be deprecated")]
1646     /// </summary>
1647     /// <since_tizen> 3 </since_tizen>
1648     [Obsolete("Please do not use! This will be deprecated! Please use PivotPoint instead!")]
1649     [EditorBrowsable(EditorBrowsableState.Never)]
1650     public struct AnchorPoint
1651     {
1652         /// <summary>
1653         /// Top
1654         /// </summary>
1655         /// <since_tizen> 3 </since_tizen>
1656         public static float Top
1657         {
1658             get
1659             {
1660                 return PivotPoint.Top;
1661             }
1662         }
1663         /// <summary>
1664         /// Bottom
1665         /// </summary>
1666         /// <since_tizen> 3 </since_tizen>
1667         public static float Bottom
1668         {
1669             get
1670             {
1671                 return PivotPoint.Bottom;
1672             }
1673         }
1674         /// <summary>
1675         /// Left
1676         /// </summary>
1677         /// <since_tizen> 3 </since_tizen>
1678         public static float Left
1679         {
1680             get
1681             {
1682                 return PivotPoint.Left;
1683             }
1684         }
1685         /// <summary>
1686         /// Right
1687         /// </summary>
1688         /// <since_tizen> 3 </since_tizen>
1689         public static float Right
1690         {
1691             get
1692             {
1693                 return PivotPoint.Right;
1694             }
1695         }
1696         /// <summary>
1697         /// Middle
1698         /// </summary>
1699         /// <since_tizen> 3 </since_tizen>
1700         public static float Middle
1701         {
1702             get
1703             {
1704                 return PivotPoint.Middle;
1705             }
1706         }
1707         /// <summary>
1708         /// TopLeft
1709         /// </summary>
1710         /// <since_tizen> 3 </since_tizen>
1711         public static Position TopLeft
1712         {
1713             get
1714             {
1715                 return PivotPoint.TopLeft;
1716             }
1717         }
1718         /// <summary>
1719         /// TopCenter
1720         /// </summary>
1721         /// <since_tizen> 3 </since_tizen>
1722         public static Position TopCenter
1723         {
1724             get
1725             {
1726                 return PivotPoint.TopCenter;
1727             }
1728         }
1729         /// <summary>
1730         /// TopRight
1731         /// </summary>
1732         /// <since_tizen> 3 </since_tizen>
1733         public static Position TopRight
1734         {
1735             get
1736             {
1737                 return PivotPoint.TopRight;
1738             }
1739         }
1740         /// <summary>
1741         /// CenterLeft
1742         /// </summary>
1743         /// <since_tizen> 3 </since_tizen>
1744         public static Position CenterLeft
1745         {
1746             get
1747             {
1748                 return PivotPoint.CenterLeft;
1749             }
1750         }
1751         /// <summary>
1752         /// Center
1753         /// </summary>
1754         /// <since_tizen> 3 </since_tizen>
1755         public static Position Center
1756         {
1757             get
1758             {
1759                 return PivotPoint.Center;
1760             }
1761         }
1762         /// <summary>
1763         /// CenterRight
1764         /// </summary>
1765         /// <since_tizen> 3 </since_tizen>
1766         public static Position CenterRight
1767         {
1768             get
1769             {
1770                 return PivotPoint.CenterRight;
1771             }
1772         }
1773         /// <summary>
1774         /// BottomLeft
1775         /// </summary>
1776         /// <since_tizen> 3 </since_tizen>
1777         public static Position BottomLeft
1778         {
1779             get
1780             {
1781                 return PivotPoint.BottomLeft;
1782             }
1783         }
1784         /// <summary>
1785         /// BottomCenter
1786         /// </summary>
1787         /// <since_tizen> 3 </since_tizen>
1788         public static Position BottomCenter
1789         {
1790             get
1791             {
1792                 return PivotPoint.BottomCenter;
1793             }
1794         }
1795         /// <summary>
1796         /// BottomRight
1797         /// </summary>
1798         /// <since_tizen> 3 </since_tizen>
1799         public static Position BottomRight
1800         {
1801             get
1802             {
1803                 return PivotPoint.BottomRight;
1804             }
1805         }
1806     }
1807
1808     /// <summary>
1809     /// Enumeration for setting cache model of a WebView.
1810     /// </summary>
1811     [EditorBrowsable(EditorBrowsableState.Never)]
1812     public enum CacheModel
1813     {
1814         /// <summary>
1815         /// Use the smallest cache capacity.
1816         /// </summary>
1817         DocumentViewer,
1818         /// <summary>
1819         /// Use the bigger cache capacity than DocumentBrowser.
1820         /// </summary>
1821         DocumentBrowser,
1822         /// <summary>
1823         /// Use the biggest cache capacity.
1824         /// </summary>
1825         PrimaryWebBrowser
1826     }
1827
1828     /// <summary>
1829     /// Enumeration for setting cache model of a WebView.
1830     /// </summary>
1831     [EditorBrowsable(EditorBrowsableState.Never)]
1832     public enum CookieAcceptPolicy
1833     {
1834         /// <summary>
1835         /// Accepts every cookie sent from any page.
1836         /// </summary>
1837         Always,
1838         /// <summary>
1839         /// Rejects all the cookies.
1840         /// </summary>
1841         Never,
1842         /// <summary>
1843         /// Accepts only cookies set by the main document that is loaded.
1844         /// </summary>
1845         NoThirdParty
1846     }
1847
1848     /// <summary>
1849     /// FontSizeScale constant.
1850     /// </summary>
1851     /// <since_tizen> 9 </since_tizen>
1852     public struct FontSizeScale
1853     {
1854         /// <summary>
1855         /// UseSystemSetting
1856         /// </summary>
1857         /// <since_tizen> 9 </since_tizen>
1858         public const float UseSystemSetting = -1.0f;
1859     }
1860
1861     /// <summary>
1862     /// Offset has left, right, bottom, top value.
1863     /// </summary>
1864     [EditorBrowsable(EditorBrowsableState.Never)]
1865     public struct Offset
1866     {
1867         /// <summary>
1868         /// Constructor
1869         /// </summary>
1870         /// <param name="left">left offset</param>
1871         /// <param name="right">right offset</param>
1872         /// <param name="bottom">bottom offset</param>
1873         /// <param name="top">top offset</param>
1874         [EditorBrowsable(EditorBrowsableState.Never)]
1875         public Offset(int left, int right, int bottom, int top)
1876         {
1877             Left = left;
1878             Right = right;
1879             Bottom = bottom;
1880             Top = top;
1881         }
1882
1883         /// <summary>
1884         /// Left
1885         /// </summary>
1886         [EditorBrowsable(EditorBrowsableState.Never)]
1887         public int Left {get; set;}
1888
1889         /// <summary>
1890         /// Right
1891         /// </summary>
1892         [EditorBrowsable(EditorBrowsableState.Never)]
1893         public int Right {get; set;}
1894
1895         /// <summary>
1896         /// Bottom
1897         /// </summary>
1898         [EditorBrowsable(EditorBrowsableState.Never)]
1899         public int Bottom {get; set;}
1900
1901         /// <summary>
1902         /// Top
1903         /// </summary>
1904         [EditorBrowsable(EditorBrowsableState.Never)]
1905         public int Top {get; set;}
1906
1907     }
1908
1909     /// <summary>
1910     /// TODO This is to get TizenFX resource path. It needs to be fixed to use application framework API in the future.
1911     /// Internal use only. Do not open this API.
1912     /// </summary>
1913     internal struct FrameworkInformation
1914     {
1915         public readonly static string ResourcePath = "/usr/share/dotnet.tizen/framework/res/";
1916     }
1917
1918     /// <summary>
1919     /// This Enumeration is used the GLES version for EGL configuration.<br />
1920     /// If the device can not support GLES version 3.0 over, the version will be chosen with GLES version 2.0.<br />
1921     /// It is for GLWindow and GLView.<br />
1922     /// </summary>
1923     [EditorBrowsable(EditorBrowsableState.Never)]
1924     public enum GLESVersion
1925     {
1926       /// <summary>
1927       /// GLES version 2.0
1928       /// </summary>
1929       [EditorBrowsable(EditorBrowsableState.Never)]
1930       Version20 = 0,
1931
1932       /// <summary>
1933       /// GLES version 3.0
1934       /// </summary>
1935       [EditorBrowsable(EditorBrowsableState.Never)]
1936       Version30
1937     }
1938
1939     /// <summary>
1940     /// Enumeration for rendering mode
1941     /// This Enumeration is used to choose the rendering mode.
1942     /// It has two options.
1943     /// One of them is continuous mode. It is rendered continuously.
1944     /// The other is on demand mode. It is rendered by application.
1945     /// It is for GLWindow and GLView.
1946     /// </summary>
1947     [EditorBrowsable(EditorBrowsableState.Never)]
1948     public enum GLRenderingMode
1949     {
1950       /// <summary>
1951       /// continuous mode
1952       /// </summary>
1953       [EditorBrowsable(EditorBrowsableState.Never)]
1954       Continuous = 0,
1955
1956       /// <summary>
1957       /// on demand by application
1958       /// </summary>
1959       [EditorBrowsable(EditorBrowsableState.Never)]
1960       OnDemand = 1
1961     }
1962 }