Merge "[Telephony] Sample App implementation."
[platform/core/csapi/tizenfx.git] / test / ElmSharp.Test / TC / GenListTest4.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 using System;
18 using ElmSharp;
19
20 namespace ElmSharp.Test
21 {
22     class GenListTest4 : TestCaseBase
23     {
24         public override string TestName => "GenListTest4";
25         public override string TestDescription => "To test Append/Prepend/InsertBefore operation of GenList";
26
27         public override void Run(Window window)
28         {
29             Conformant conformant = new Conformant(window);
30             conformant.Show();
31             GenList list = new GenList(window)
32             {
33                 Homogeneous = true,
34                 AlignmentX = -1,
35                 AlignmentY = -1,
36                 WeightX = 1,
37                 WeightY = 1
38             };
39
40             GenItemClass defaultClass = new GenItemClass("default")
41             {
42                 GetTextHandler = (obj, part) =>
43                 {
44                     return string.Format("{0} - {1}", (string)obj, part);
45                 }
46             };
47
48             GenListItem[] items = new GenListItem[100];
49             for (int i = 0; i < 100; i++)
50             {
51                 if (i < 30)
52                 {
53                     items[i] = list.Append(defaultClass, string.Format("{0} Item", i));
54                 }
55                 else if (i < 60)
56                 {
57                     items[i] = list.Prepend(defaultClass, string.Format("{0} Item", i));
58                 }else
59                 {
60                     items[i] = list.InsertBefore(defaultClass, string.Format("{0} Item", i), items[50]);
61                 }
62             }
63             list.Show();
64             list.ItemSelected += List_ItemSelected; ;
65             conformant.SetContent(list);
66         }
67
68         private void List_ItemSelected(object sender, GenListItemEventArgs e)
69         {
70             Console.WriteLine("{0} Item was selected", (string)(e.Item.Data));
71         }
72     }
73 }