4 using Tizen.NUI.BaseComponents;
5 using tlog = Tizen.Log;
7 namespace Tizen.TV.NUI.Example
9 public class AtspiTest : IExample
12 const string tag = "NUITEST";
14 public void Activate()
16 Window.Instance.KeyEvent += OnKeyEvent;
17 Window.Instance.BackgroundColor = Color.Green;
19 guide = new TextLabel();
20 guide.Position = new Position(100, 100, 0);
21 guide.MultiLine = true;
22 guide.PointSize = 30.0f;
23 guide.Text = "dali-atspi test\n" +
24 "Return Key: stop Say().\n" +
25 "Up Key: Say() script3. discardable=false.\n" +
26 "Right Key: Say() script1.\n" +
27 "Down Key: Say() repeat infinitely.\n" +
28 "Left Key: Say() script2.";
30 Window.Instance.GetDefaultLayer().Add(guide);
33 view.Size2D = new Size2D(100, 100);
34 view.Position2D = new Position2D(700, 700);
35 view.BackgroundColor = Color.Red;
36 Window.Instance.GetDefaultLayer().Add(view);
38 view.KeyEvent += OnKeyPressed;
39 view.Focusable = true;
40 FocusManager.Instance.SetCurrentFocusView(view);
42 //var accessbilityStatus = NDalicPINVOKE.accessibility_get_status(View.getCPtr(view));
43 //Tizen.Log.Fatal("NUITEST", $"accessbilityStatus={accessbilityStatus}");
46 public void OnKeyEvent(object sender, Window.KeyEventArgs e)
50 private TextLabel guide;
52 string testScript1 = "¾È³çÇϼ¼¿ä. ´Þ¸® ¿¡ÀÌƼ¿¡½ºÇǾÆÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. ¼ýÀÚÀÏÅ°¸¦ ´©¸£¸é ÆÛÁîÀÌ°í ¼ýÀÚÀÌÅ°¸¦ ´©¸£¸é ¸®ÁÜÀÔ´Ï´Ù. " +
53 "Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved PROPRIETARY / CONFIDENTIAL " +
54 "This software is the confidential and proprietary information of SAMSUNG ELECTRONICS(Confidential Information). " +
55 "You shall not disclose such Confidential Information and shall use it only in accordance with the terms of the license agreement " +
56 "you entered into with SAMSUNG ELECTRONICS.SAMSUNG make no representations or warranties about the suitability of the software, " +
57 "either express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, " +
58 "or non-infringement.SAMSUNG shall not be liable for any damages suffered by licensee as a result of using, modifying or distributing " +
59 "this software or its derivatives.";
61 const string testScript2 = "ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 1 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 2 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 3 " +
62 "ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 4 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 5 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 6 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 7 " +
63 "ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 8 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 9 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 10 " +
64 "ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 11 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 12 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 13 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 14 " +
65 "ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 15 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 16 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 17 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 18 " +
66 "ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 19 ÀÌ°Ç ¼¼ÀÌ Å×½ºÆ® ÀÔ´Ï´Ù. This is Say test 20";
68 const string testScript3 = "Say another test 1 Say another test 2 Say another test 3 Say another test 4 Say another test 5";
70 bool repeatFlag = false;
71 private bool OnKeyPressed(object source, View.KeyEventArgs e)
73 if (e.Key.State == Key.StateType.Down)
75 tlog.Fatal(tag, $"KeyPressedName={e.Key.KeyPressedName}");
76 //var accessbilityStatus = NDalicPINVOKE.accessibility_get_status(View.getCPtr(view));
77 if (e.Key.KeyPressedName == "Return")
79 Accessibility.Instance.SayFinished -= Instance_SayFinished;
80 Accessibility.Instance.Say("", true);
83 else if (e.Key.KeyPressedName == "Right")
85 Accessibility.Instance.Say(testScript1, true);
87 else if (e.Key.KeyPressedName == "Left")
89 Accessibility.Instance.Say(testScript2, true);
91 else if (e.Key.KeyPressedName == "Up")
93 Accessibility.Instance.Say(testScript3, true);
95 else if (e.Key.KeyPressedName == "Down")
98 Accessibility.Instance.SayFinished += Instance_SayFinished;
99 Accessibility.Instance.Say("my name is say api !!!", true);
101 else if (e.Key.KeyPressedName == "1")
103 Accessibility.Instance.PauseResume(true);
105 else if (e.Key.KeyPressedName == "2")
107 Accessibility.Instance.PauseResume(false);
113 private void Instance_SayFinished(object sender, Accessibility.SayFinishedEventArgs e)
115 tlog.Fatal(tag, $"Instance_SayFinished()! State={e.State}");
116 if (e.State == Accessibility.SayFinishedState.Stopped)
118 Accessibility.Instance.Say("ÀÌ°Ç Äݹé Å×½ºÆ® ÀÔ´Ï´Ù. this is callback test! ÄݹéÀ» »©·Á¸é È®ÀÎÅ°¸¦ ´©¸£¼¼¿ä. to remove callback please push Return key", true);
122 public void Deactivate()