2 using Tizen.NUI.BaseComponents;
7 class Example : NUIApplication
12 private TextLabel myTextLabel;
15 //===========================
18 TextLabel tl1, tl2, tl3;
19 ToggleButton tb1, tb2, tb3;
22 protected override void OnCreate()
27 myView.Size2D = new Size2D(100, 100);
28 myView.Position = new Position(100, 100, 0);
29 myView.BackgroundColor = Color.Red;
30 myView.Name = "myView";
31 myView.SizeWidth = 111;
33 Window.Instance.GetDefaultLayer().Add(myView);
35 myTextLabel = new TextLabel();
36 myTextLabel.Position = new Position(100, 100, 0);
37 myTextLabel.Size2D = new Size2D(100, 100);
38 myTextLabel.Name = "myTextLabel";
40 myView.Add(myTextLabel);
42 //===========================
45 myTimer = new Timer(500);
46 myTimer.Tick += Mytimer_Tick;
50 private void ObjectDumpTrigger()
52 for (int i = 0; i < Window.LayerCount; i++)
54 BFS(Window.GetLayer((uint)i), 1);
60 private static void BFS(Animatable o, int depth)
64 Tizen.Log.Fatal("NUI-APP", "##### o == null! return here!");
68 Tizen.Log.Fatal("NUI-APP", "##### o.GetTypeName()=" + o.GetTypeName());
72 View myView = o as View;
76 TextLabel myTextLabel = o as TextLabel;
78 Tizen.Log.Fatal("NUI-APP", string.Format("it is TextLabel, {0}", myTextLabel.Text));
84 Tizen.Log.Fatal("NUI-APP", string.Format("it is not TextLaebl"));
87 for (int i = 0; i < myView.ChildCount; i++)
89 BFS(myView.GetChildAt((uint)i), depth + 1);
94 Layer myLayer = o as Layer;
96 for (int i = 0; i < myLayer.ChildCount; i++)
98 BFS(myLayer.GetChildAt((uint)i), depth + 1);
107 private bool Mytimer_Tick(object source, Timer.TickEventArgs e)
110 ObjectDumpTrigger2();
111 Tizen.Log.Debug("NUI", " === Size property set/get test!");
112 myView.Size2D.Width += 5; //this is not working, because stage's Size is Vector2 but view's Size is Vector3. need to figure out.
113 myView.SizeHeight += 5;
114 Tizen.Log.Debug("NUI", $" view's size width= {myView.Size2D.Width} heigh={myView.Size2D.Height}");
121 //======================================================================
130 tl1 = new TextLabel();
131 tl2 = new TextLabel();
132 tl3 = new TextLabel();
134 tb1 = new ToggleButton();
135 tb2 = new ToggleButton();
136 tb3 = new ToggleButton();
151 Window.Instance.AddLayer(layer);
154 void ObjectDumpTrigger2()
156 uint layerCnt = Window.LayerCount;
157 Tizen.Log.Fatal("NUI-APP", "layerCnt=" + layerCnt);
159 for (uint i = 0; i < layerCnt; i++)
161 Tizen.Log.Fatal("NUI-APP", "T[" + DateTime.Now + "]__________ layer #" + i + " traverse");
162 CheckViewsInLayer(Window.GetLayer(i));
165 void CheckViewsInLayer(Animatable obj)
169 var layer = obj as Layer;
172 Tizen.Log.Fatal("NUI-APP", "### layer is null! just return!");
175 uint childCnt = layer.ChildCount;
178 for (uint i = 0; i < childCnt; i++)
180 var temp = layer.GetChildAt(i) as View;
181 Tizen.Log.Fatal("NUI-APP", "depth[1] child in layer! type=" + temp?.GetTypeName());
182 ViewCheckRecurse(temp, 1);
187 Tizen.Log.Fatal("NUI-APP", "### there is no child in this layer! just return!");
192 Tizen.Log.Fatal("NUI-APP", "obj is NOT Layer! do nothing!");
195 void ViewCheckRecurse(View view, int depth)
199 uint childCnt = view.ChildCount;
203 for (uint i = 0; i < childCnt; i++)
205 var temp = view.GetChildAt(i) as View;
206 Tizen.Log.Fatal("NUI-APP", "depth[" + depth + "] child in layer! type=" + temp.GetTypeName() + " AS-IS Test: IsView?=" + (temp is View) + " IsTextLabel?=" + (temp is TextLabel) );
208 if (temp is TextLabel)
210 ToggleButton _toggleBt = temp as ToggleButton;
211 if(_toggleBt == null)
213 Tizen.Log.Debug("NUI", $"temp is TextLabel! try to do invalid cast! should return null! OK!GOOD!");
217 Tizen.Log.Debug("NUI", $"temp is TextLabel! try to do invalid cast! should return null! BAD!ERROR!");
220 else if (temp is ToggleButton)
222 TextLabel _textLb = temp as TextLabel;
225 Tizen.Log.Debug("NUI", $"temp is ToggleButton! try to do invalid cast! should return null! OK!GOOD!");
229 Tizen.Log.Debug("NUI", $"temp is ToggleButton! try to do invalid cast! should return null! BAD!ERROR!");
233 ViewCheckRecurse(temp, depth);
238 //Tizen.Log.Fatal("NUI-APP", "depth[" + depth + "] child in layer! type=" + view.GetTypeName());
244 //Tizen.Log.Fatal("NUI-APP", "### view is null! just return!");
248 private static void _Main(string[] args)
250 //Create an Application
251 Example myProgram = new Example();