2 * Copyright (c) 2021 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using System.Diagnostics;
19 using System.Runtime.CompilerServices;
26 /// Enumeration for texture types.
28 /// <since_tizen> 3 </since_tizen>
29 public enum TextureType
34 /// <since_tizen> 3 </since_tizen>
35 Texture2D = Tizen.NUI.TextureType.TEXTURE_2D,
37 /// Six 2D images arranged in a cube-shape
39 /// <since_tizen> 3 </since_tizen>
40 TextureCube = Tizen.NUI.TextureType.TEXTURE_CUBE
44 /// Enumeration for the direction
46 /// <since_tizen> 3 </since_tizen>
47 public struct Direction
50 /// Enumeration for the Direction types.
52 /// <since_tizen> 3 </since_tizen>
56 /// from Left to Right
58 /// <since_tizen> 3 </since_tizen>
59 LeftToRight = Tizen.NUI.DirectionType.LEFT_TO_RIGHT,
61 /// from Right to Left
63 /// <since_tizen> 3 </since_tizen>
64 RightToLeft = Tizen.NUI.DirectionType.RIGHT_TO_LEFT
71 /// <since_tizen> 3 </since_tizen>
75 /// The properties used for a Tooltip.
77 /// <since_tizen> 3 </since_tizen>
78 [System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1716: Identifiers should not match keywords")]
79 public struct Property
82 /// The content to display.
84 /// <since_tizen> 3 </since_tizen>
85 public static readonly int Content = NDalic.TooltipContent;
87 /// The layout of the content.
89 /// <since_tizen> 3 </since_tizen>
90 public static readonly int Layout = NDalic.TooltipLayout;
92 /// Time to wait in seconds before a tooltip is shown while the is movement is within the allowed threshold.
94 /// <since_tizen> 3 </since_tizen>
95 public static readonly int WaitTime = NDalic.TooltipWaitTime;
97 /// The background of the tooltip.
99 /// <since_tizen> 3 </since_tizen>
100 public static readonly int Background = NDalic.TooltipBackground;
102 /// The tail used by the tooltip.
104 /// <since_tizen> 3 </since_tizen>
105 public static readonly int Tail = NDalic.TooltipTail;
107 /// The position of the tooltip in relation to the control.
109 /// <since_tizen> 3 </since_tizen>
110 public static readonly int Position = NDalic.TooltipPosition;
112 /// If Tooltip::Position::HOVER_POINT is used for the POSITION, then this is the offset the tooltip is displayed at from the hover point.
114 /// <since_tizen> 3 </since_tizen>
115 public static readonly int HoverPointOffset = NDalic.TooltipHoverPointOffset;
117 /// The movement threshold allowed before showing (or hiding a popup).
119 /// <since_tizen> 3 </since_tizen>
120 public static readonly int MovementThreshold = NDalic.TooltipMovementThreshold;
122 /// If true, the tooltip will disappear after hover movement beyond a certain distance.
124 /// <since_tizen> 3 </since_tizen>
125 public static readonly int DisappearOnMovement = NDalic.TooltipDisappearOnMovement;
129 /// Background Property
131 /// <since_tizen> 3 </since_tizen>
132 public struct BackgroundProperty
135 /// The image to use as the background.
137 /// <since_tizen> 3 </since_tizen>
138 public static readonly int Visual = NDalic.TooltipBackgroundVisual;
140 /// The size of the borders in the order: left, right, bottom, top.
142 /// <since_tizen> 3 </since_tizen>
143 public static readonly int Border = NDalic.TooltipBackgroundBorder;
147 /// The properties of the tail used by the tooltip.
149 /// <since_tizen> 3 </since_tizen>
150 public struct TailProperty
153 /// Whether to show the tail or not.
155 /// <since_tizen> 3 </since_tizen>
156 public static readonly int Visibility = NDalic.TooltipTailVisibility;
158 /// The image used for the tail if it is above the tooltip.
160 /// <since_tizen> 3 </since_tizen>
161 public static readonly int AboveVisual = NDalic.TooltipTailAboveVisual;
163 /// The image used for the tail if it is below the tooltip.
165 /// <since_tizen> 3 </since_tizen>
166 public static readonly int BelowVisual = NDalic.TooltipTailBelowVisual;
171 /// Enumeration for stereoscopic view modes.
173 /// <since_tizen> 3 </since_tizen>
175 /// Deprecated.(API Level 6) Not used.
177 [Obsolete("Do not use this ViewMode(Deprecated).")]
181 /// Monoscopic (single camera). This is the default.
183 /// <since_tizen> 3 </since_tizen>
185 /// Deprecated.(API Level 6) Not used.
187 [Obsolete("Do not use this ViewMode.Mono(Deprecated).")]
190 /// Stereoscopic. Frame buffer is split horizontally with the left and right camera views in their respective sides.
192 /// <since_tizen> 3 </since_tizen>
194 /// Deprecated.(API Level 6) Not used.
196 [Obsolete("Do not use this ViewMode.StereoHorizontal(Deprecated).")]
199 /// Stereoscopic. Frame buffer is split vertically with the left camera view at the top and the right camera view at the bottom.
201 /// <since_tizen> 3 </since_tizen>
203 /// Deprecated.(API Level 6) Not used.
205 [Obsolete("Do not use this ViewMode.StereoVertical(Deprecated).")]
208 /// Stereoscopic. Left/Right camera views are rendered into the framebuffer on alternate frames.
210 /// <since_tizen> 3 </since_tizen>
212 /// Deprecated.(API Level 6) Not used.
214 [Obsolete("Do not use this ViewMode.StereoInterlaced(Deprecated).")]
218 } // namespace Constants
221 internal class NUILog
223 [Conditional("NUI_DEBUG_ON")]
224 public static void Debug(string msg,
225 [CallerLineNumber] int lineNum = 0,
226 [CallerMemberName] string caller = null,
227 [CallerFilePath] string file = null
230 Tizen.Log.Error("NUI", $"{msg} (at line {lineNum} of {caller} in {file})\n");
233 public static void Error(string msg,
234 [CallerLineNumber] int lineNum = 0,
235 [CallerMemberName] string caller = null,
236 [CallerFilePath] string file = null
239 Tizen.Log.Error("NUI", $"{msg} (at line {lineNum} of {caller} in {file})\n");
242 public static void ErrorBacktrace(string msg,
243 [CallerLineNumber] int lineNum = 0,
244 [CallerMemberName] string caller = null,
245 [CallerFilePath] string file = null
248 Tizen.Log.Error("NUI", $"[ERR]{msg} (at line {lineNum} of {caller} in {file})\n");
249 Tizen.Log.Error("NUI", $"[ERR] Back Trace =>");
250 global::System.Diagnostics.StackTrace st = new global::System.Diagnostics.StackTrace(true);
251 for (int i = 0; i < st.FrameCount; i++)
253 global::System.Diagnostics.StackFrame sf = st.GetFrame(i);
254 Tizen.Log.Error("NUI", " Method " + sf.GetMethod());