1 using Tizen.NUI.BaseComponents;
2 using Tizen.NUI.Extension;
3 using Tizen.NUI.Components;
5 namespace Tizen.NUI.Samples
7 public class RiveAnimationTest : IExample
10 private Layer defaultLayer;
12 Tizen.NUI.Extension.RiveAnimationView rav;
13 Button playButton, stopButton;
14 Button bounceButton, brokeButton;
15 Button fillButton, strokeButton, opacityButton;
16 Button scaleButton, rotationButton, positionButton;
17 public void Activate()
19 window = NUIApplication.GetDefaultWindow();
20 defaultLayer = window.GetDefaultLayer();
22 rav = new Tizen.NUI.Extension.RiveAnimationView(Tizen.Applications.Application.Current.DirectoryInfo.Resource + "rive/buggy.riv")
24 Size = new Size(500, 500),
25 ParentOrigin = ParentOrigin.Center,
26 PivotPoint = PivotPoint.Center,
27 PositionUsesPivotPoint = true,
30 rav.EnableAnimation("idle", true);
32 playButton = new Button()
34 Size = new Size(200, 100),
35 Position = new Position(0, 0),
38 playButton.Clicked += (object source, ClickedEventArgs args) =>
43 stopButton = new Button()
45 Size = new Size(200, 100),
46 Position = new Position(200, 0),
49 stopButton.Clicked += (object source, ClickedEventArgs args) =>
54 bounceButton = new Button()
56 Size = new Size(200, 100),
57 Position = new Position(0, 100),
60 bounceButton.Clicked += (object source, ClickedEventArgs args) =>
62 rav.EnableAnimation("bouncing", true);
65 brokeButton = new Button()
67 Size = new Size(200, 100),
68 Position = new Position(200, 100),
71 brokeButton.Clicked += (object source, ClickedEventArgs args) =>
73 rav.EnableAnimation("broken", true);
76 fillButton = new Button()
78 Size = new Size(200, 100),
79 Position = new Position(0, 200),
82 fillButton.Clicked += (object source, ClickedEventArgs args) =>
84 rav.SetShapeFillColor("grillFillColor", new Color(1.0f, 0.0f, 0.0f, 1.0f));
87 strokeButton = new Button()
89 Size = new Size(200, 100),
90 Position = new Position(200, 200),
93 strokeButton.Clicked += (object source, ClickedEventArgs args) =>
95 rav.SetShapeStrokeColor("grillStrokeColor", new Color(0.0f, 255.0f, 0.0f, 255.0f));
98 opacityButton = new Button()
100 Size = new Size(200, 100),
101 Position = new Position(400, 200),
104 opacityButton.Clicked += (object source, ClickedEventArgs args) =>
106 rav.SetNodeOpacity("front_light", 0.3f);
109 scaleButton = new Button()
111 Size = new Size(200, 100),
112 Position = new Position(0, 300),
115 scaleButton.Clicked += (object source, ClickedEventArgs args) =>
117 rav.SetNodeScale("front_light", new Vector2(2.0f, 2.0f));
120 rotationButton = new Button()
122 Size = new Size(200, 100),
123 Position = new Position(200, 300),
126 rotationButton.Clicked += (object source, ClickedEventArgs args) =>
128 rav.SetNodeRotation("front_light", new Degree(45.0f));
131 positionButton = new Button()
133 Size = new Size(200, 100),
134 Position = new Position(400, 300),
137 positionButton.Clicked += (object source, ClickedEventArgs args) =>
139 rav.SetNodePosition("front_light", new Position(100.0f, -50.0f));
142 defaultLayer.Add(rav);
143 defaultLayer.Add(playButton);
144 defaultLayer.Add(stopButton);
145 defaultLayer.Add(bounceButton);
146 defaultLayer.Add(brokeButton);
147 defaultLayer.Add(fillButton);
148 defaultLayer.Add(strokeButton);
149 defaultLayer.Add(opacityButton);
150 defaultLayer.Add(scaleButton);
151 defaultLayer.Add(rotationButton);
152 defaultLayer.Add(positionButton);
154 public void Deactivate()
156 if (rav) { defaultLayer.Remove(rav); }
157 if (playButton) { defaultLayer.Remove(playButton); }
158 if (stopButton) { defaultLayer.Remove(stopButton); }
159 if (bounceButton) { defaultLayer.Remove(bounceButton); }
160 if (brokeButton) { defaultLayer.Remove(brokeButton); }
161 if (fillButton) { defaultLayer.Remove(fillButton); }
162 if (strokeButton) { defaultLayer.Remove(strokeButton); }
163 if (opacityButton) { defaultLayer.Remove(opacityButton); }
164 if (scaleButton) { defaultLayer.Remove(scaleButton); }
165 if (rotationButton) { defaultLayer.Remove(rotationButton); }
166 if (positionButton) { defaultLayer.Remove(positionButton); }