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