2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
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.Collections.Generic;
21 namespace ElmSharp.Test
23 class MultiButtonEntryTest1 : TestCaseBase
25 public override string TestName => "MultiButtonEntryTest1";
26 public override string TestDescription => "To test basic operation of MultiButtonEntry";
28 public override void Run(Window window)
30 Background bg = new Background(window);
31 bg.Color = Color.White;
33 bg.Resize(window.ScreenSize.Width, window.ScreenSize.Height);
36 MultiButtonEntry mbe = new MultiButtonEntry(window)
43 var test = mbe.Append("test");
44 mbe.Prepend("prepend");
46 mbe.InsertBefore(test, "insertBefore");
47 mbe.InsertAfter(test, "insertAfter");
49 mbe.ItemSelected += (s, e) =>
51 Console.WriteLine("item selected: " + e.Item.Label);
52 if (e.Item.Next != null)
53 Console.WriteLine("next item: " + e.Item.Next);
54 if (e.Item.Prev != null)
55 Console.WriteLine("previous item: " + e.Item.Prev);
58 mbe.ItemClicked += (s, e) =>
60 Console.WriteLine("item clicked: " + e.Item.Label);
63 mbe.ItemLongPressed += (s, e) =>
65 Console.WriteLine("item longpressed: " + e.Item.Label);
68 mbe.ItemAdded += (s, e) =>
70 Console.WriteLine("item added: " + e.Item.Label);
73 mbe.ItemDeleted += (s, e) =>
75 Console.WriteLine("item deleted: " + e.Item.Label);
78 mbe.AppendFilter((label) =>
80 if (label.Contains("a"))
82 Console.WriteLine("appended filter : Item has 'a', It won't be added until 'a' is removed.");
91 mbe.PrependFilter((label) =>
93 if (label.Contains("p"))
95 Console.WriteLine("prepended filter : Item has 'p', It won't be added until 'p' is removed.");
104 Label label1 = new Label(window)
106 Text = "MultiButtonEntry Test",
110 label1.Resize(600, 100);
114 mbe.Resize(600, 600);