Add multi-user support
[platform/core/appfw/shortcut.git] / test / icon.c
1 /*
2  * Copyright (c) 2000 - 2013 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
18 #include <Elementary.h>
19 #include <shortcut.h>
20
21 /* For multi-user support */
22 #include <tzplatform_config.h>
23
24 #define USR_SHARE tzplatform_getenv(TZ_USER_SHARE)
25
26 static int result_cb(struct shortcut_icon *handle, int ret, void *data)
27 {
28         printf("Client: Return %d (%p)\n", ret, handle);
29         return 0;
30 }
31
32 static Eina_Bool test_main(void *data)
33 {
34         struct shortcut_icon *handle;
35         static int idx = 0;
36         int ret;
37         char filename[256];
38         int type;
39
40         idx++;
41
42         handle = shortcut_icon_request_create();
43         if (!handle) {
44                 printf("Failed to create a request\n");
45                 return ECORE_CALLBACK_RENEW;
46         }
47
48         printf("Test: %d\n", idx);
49         ret = shortcut_icon_request_set_info(handle, NULL, SHORTCUT_ICON_TYPE_IMAGE, DEFAULT_ICON_PART, "/usr/share/icons/default/small/org.tizen.music-player.png", NULL, NULL);
50         printf("NAME set_info: %d\n", ret);
51
52         snprintf(filename, sizeof(filename), "App Name %d", idx);
53         ret = shortcut_icon_request_set_info(handle, NULL, SHORTCUT_ICON_TYPE_TEXT, DEFAULT_NAME_PART, filename, NULL, NULL);
54         printf("TEXT set_info: %d\n", ret);
55
56         snprintf(filename, sizeof(filename), "%s/live_magazine/always/out%d.png", USR_SHARE, idx);
57
58         switch (idx % 7) {
59         case 0: type = LIVEBOX_TYPE_1x1; break;
60         case 1: type = LIVEBOX_TYPE_2x1; break;
61         case 2: type = LIVEBOX_TYPE_2x2; break;
62         case 3: type = LIVEBOX_TYPE_4x1; break;
63         case 4: type = LIVEBOX_TYPE_4x2; break;
64         case 5: type = LIVEBOX_TYPE_4x3; break;
65         case 6: type = LIVEBOX_TYPE_4x4; break;
66         default: type = LIVEBOX_TYPE_1x1; break;
67         }
68
69         ret = shortcut_icon_request_send(handle, type, NULL, NULL, filename, result_cb, NULL);
70         printf("request: %d\n", ret);
71
72         ret = shortcut_icon_request_destroy(handle);
73         printf("destroy: %d\n", ret);
74         return ECORE_CALLBACK_RENEW;
75 }
76
77 static int initialized_cb(int status, void *data)
78 {
79         printf("Hello initializer\n");
80         return 0;
81 }
82
83 int elm_main(int argc, char *argv[])
84 {
85         shortcut_icon_service_init(NULL, NULL);
86
87         ecore_timer_add(5.0f, test_main, NULL);
88
89         elm_run();
90         shortcut_icon_service_fini();
91         elm_shutdown();
92         return 0;
93 }
94
95 ELM_MAIN()
96 /* End of a file */