efl

Форк
0
/
test_icon.c 
861 строка · 23.3 Кб
1
#ifdef HAVE_CONFIG_H
2
# include "elementary_config.h"
3
#endif
4
#include <Elementary.h>
5

6
static void
7
aspect_fixed_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
8
{
9
   Evas_Object *ic = (Evas_Object *)data;
10
   elm_image_aspect_fixed_set(ic, elm_check_state_get(obj));
11
}
12

13
static void
14
fill_outside_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
15
{
16
   Evas_Object *ic = (Evas_Object *)data;
17
   elm_image_fill_outside_set(ic, elm_check_state_get(obj));
18
}
19

20
static void
21
smooth_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
22
{
23
   Evas_Object *ic = (Evas_Object *)data;
24
   elm_image_smooth_set(ic, elm_check_state_get(obj));
25
}
26

27
static void
28
bt_clicked(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
29
{
30
   Evas_Object *win, *ic;
31
   char buf[PATH_MAX];
32

33
   win = elm_win_util_standard_add("preload-prescale", "Preload & Prescale");
34
   elm_win_autodel_set(win, EINA_TRUE);
35

36
   ic = elm_icon_add(win);
37
   evas_object_size_hint_weight_set(ic, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
38
   elm_win_resize_object_add(win, ic);
39
   snprintf(buf, sizeof(buf), "%s/images/insanely_huge_test_image.jpg",
40
            elm_app_data_dir_get());
41
   elm_image_file_set(ic, buf, NULL);
42

43
   elm_image_aspect_fixed_set(ic, EINA_FALSE);
44
   elm_image_preload_disabled_set(ic, EINA_TRUE);
45
   elm_image_prescale_set(ic, EINA_TRUE);
46
   evas_object_show(ic);
47

48
   evas_object_resize(win, 350 * elm_config_scale_get(),
49
                           350 * elm_config_scale_get());
50
   evas_object_show(win);
51
}
52

53
void
54
test_icon(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
55
{
56
   Evas_Object *win, *box, *ic, *hbox, *tg, *bt;
57
   char buf[PATH_MAX];
58

59
   win = elm_win_util_standard_add("icon-test", "Icon Test");
60
   elm_win_autodel_set(win, EINA_TRUE);
61

62
   box = elm_box_add(win);
63
   evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
64
   elm_win_resize_object_add(win, box);
65
   evas_object_show(box);
66

67
   ic = elm_icon_add(box);
68
   snprintf(buf, sizeof(buf), "%s/images/logo.png", elm_app_data_dir_get());
69
   elm_image_file_set(ic, buf, NULL);
70
   evas_object_size_hint_weight_set(ic, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
71
   evas_object_size_hint_align_set(ic, EVAS_HINT_FILL, EVAS_HINT_FILL);
72
   elm_box_pack_end(box, ic);
73
   evas_object_show(ic);
74

75
   hbox = elm_box_add(box);
76
   elm_box_horizontal_set(hbox, EINA_TRUE);
77
   evas_object_size_hint_weight_set(hbox, EVAS_HINT_EXPAND, 0.0);
78
   elm_box_pack_end(box, hbox);
79
   evas_object_show(hbox);
80

81
   /* Test Aspect Fixed */
82
   tg = elm_check_add(hbox);
83
   elm_object_text_set(tg, "Aspect Fixed");
84
   elm_check_state_set(tg, EINA_TRUE);
85
   evas_object_smart_callback_add(tg, "changed", aspect_fixed_cb, ic);
86
   elm_box_pack_end(hbox, tg);
87
   evas_object_show(tg);
88

89
   /* Test Fill Outside */
90
   tg = elm_check_add(hbox);
91
   elm_object_text_set(tg, "Fill Outside");
92
   evas_object_smart_callback_add(tg, "changed", fill_outside_cb, ic);
93
   elm_box_pack_end(hbox, tg);
94
   evas_object_show(tg);
95

96
   /* Test Smooth */
97
   tg = elm_check_add(hbox);
98
   elm_object_text_set(tg, "Smooth");
99
   elm_check_state_set(tg, EINA_TRUE);
100
   evas_object_smart_callback_add(tg, "changed", smooth_cb, ic);
101
   elm_box_pack_end(hbox, tg);
102
   evas_object_show(tg);
103

104
   /* Test Preload, Prescale */
105
   bt = elm_button_add(hbox);
106
   elm_object_text_set(bt, "Preload & Prescale");
107
   evas_object_smart_callback_add(bt, "clicked", bt_clicked, NULL);
108
   elm_box_pack_end(hbox, bt);
109
   evas_object_show(bt);
110

111
   /* Set window icon too */
112
   ic = evas_object_image_filled_add(evas_object_evas_get(win));
113
   evas_object_image_load_scale_down_set(ic, 8);
114
   evas_object_image_file_set(ic, buf, NULL);
115
   elm_win_icon_object_set(win, ic);
116
   evas_object_show(ic);
117

118
   evas_object_resize(win, 400 * elm_config_scale_get(),
119
                           400 * elm_config_scale_get());
120
   evas_object_show(win);
121
}
122

123
/* Test: Icon Transparent */
124
static void
125
icon_clicked(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
126
{
127
   printf("clicked!\n");
128
}
129

130
void
131
test_icon_transparent(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
132
{
133
   Evas_Object *win, *ic;
134
   char buf[PATH_MAX];
135
   int w, h;
136

137
   win = elm_win_add(NULL, "icon-transparent", ELM_WIN_BASIC);
138
   elm_win_title_set(win, "Icon Transparent");
139
   elm_win_autodel_set(win, EINA_TRUE);
140
   elm_win_alpha_set(win, EINA_TRUE);
141

142
   ic = elm_icon_add(win);
143
   snprintf(buf, sizeof(buf), "%s/images/logo.png", elm_app_data_dir_get());
144
   elm_image_file_set(ic, buf, NULL);
145
   elm_image_object_size_get(ic, &w, &h);
146
   evas_object_size_hint_aspect_set(win, EVAS_ASPECT_CONTROL_BOTH, w, h);
147
   elm_image_resizable_set(ic, EINA_FALSE, EINA_FALSE);
148
   elm_image_no_scale_set(ic, EINA_TRUE);
149
   evas_object_size_hint_weight_set(ic, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
150
   evas_object_size_hint_fill_set(ic, 0.5, 0.5);
151
   elm_win_resize_object_add(win, ic);
152
   evas_object_show(ic);
153

154
   evas_object_smart_callback_add(ic, "clicked", icon_clicked, NULL);
155

156
   evas_object_show(win);
157
}
158

159
/* Test: Icon Standard */
160
static char *
161
_gl_group_text_get(void *data, Evas_Object *obj EINA_UNUSED, const char *part EINA_UNUSED)
162
{
163
   return strdup(data);
164
}
165

166
static char *
167
_gl_text_get(void *data, Evas_Object *obj EINA_UNUSED, const char *part EINA_UNUSED)
168
{
169
   return strdup(data);
170
}
171

172
static Evas_Object *
173
_gl_content_get(void *data, Evas_Object *obj, const char *part)
174
{
175
   Evas_Object *ic;
176
   const char *name = data;
177
   int size = elm_radio_value_get(evas_object_data_get(obj, "size_rdg"));
178

179
   if (!strcmp(part, "elm.swallow.icon"))
180
     {
181
        ic = elm_icon_add(obj);
182
        // evas_object_size_hint_aspect_set(ic, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
183
        elm_icon_standard_set(ic, name);
184
        if (size)
185
          evas_object_size_hint_min_set(ic, size, size);
186
        return ic;
187
     }
188

189
   return NULL;
190
}
191

192
static void
193
_standard_genlist_populate(Evas_Object *gl)
194
{
195
   Elm_Genlist_Item_Class *itc, *itc_g;
196
   Elm_Object_Item *git;
197

198
   itc_g = elm_genlist_item_class_new();
199
   itc_g->item_style = "group_index";
200
   itc_g->func.text_get = _gl_group_text_get;
201

202
   itc = elm_genlist_item_class_new();
203
   itc->item_style = "default";
204
   itc->func.text_get = _gl_text_get;
205
   itc->func.content_get = _gl_content_get;
206

207
#define CONTEXT(NAME) \
208
   git = elm_genlist_item_append(gl, itc_g, NAME, NULL, \
209
                                 ELM_GENLIST_ITEM_GROUP, NULL, NULL);
210

211
#define IC(NAME) \
212
   elm_genlist_item_append(gl, itc, NAME, git, \
213
                           ELM_GENLIST_ITEM_NONE, NULL, NULL);
214

215
   CONTEXT("Places")
216
   IC("user-home")
217
   IC("user-bookmarks")
218
   IC("user-desktop")
219
   IC("user-trash")
220
   IC("folder")
221
   IC("folder-drag-accept")
222
   IC("folder-remote")
223
   IC("folder-open")
224
   IC("folder-home")
225
   IC("folder-download")
226
   IC("folder-recent")
227
   IC("folder-documents")
228
   IC("folder-pictures")
229
   IC("folder-music")
230
   IC("folder-videos")
231
   IC("folder-visiting")
232
   IC("network-server")
233
   IC("network-workgroup")
234
   IC("start-here")
235

236
   CONTEXT("Emblems")
237
   IC("emblem-default")
238
   IC("emblem-documents")
239
   IC("emblem-downloads")
240
   IC("emblem-favorite")
241
   IC("emblem-important")
242
   IC("emblem-mail")
243
   IC("emblem-photos")
244
   IC("emblem-readonly")
245
   IC("emblem-shared")
246
   IC("emblem-symbolic-link")
247
   IC("emblem-unreadable")
248
   IC("emblem-system")
249
   IC("emblem-synchronized")
250
   IC("emblem-synchronizing")
251

252
   CONTEXT("Actions")
253
   IC("address-book-new")
254
   IC("application-exit")
255
   IC("appointment-new")
256
   IC("call-start")
257
   IC("call-stop")
258
   IC("contact-new")
259
   IC("document-open")
260
   IC("document-open-recent")
261
   IC("document-page-setup")
262
   IC("document-properties")
263
   IC("document-save")
264
   IC("document-save-as")
265
   IC("document-send")
266
   IC("document-close")
267
   IC("document-new")
268
   IC("document-print")
269
   IC("document-print-preview")
270
   IC("document-revert")
271
   IC("document-export")
272
   IC("document-import")
273
   IC("edit-clear")
274
   IC("edit-copy")
275
   IC("edit-cut")
276
   IC("edit-delete")
277
   IC("edit-find")
278
   IC("edit-find-replace")
279
   IC("edit-paste")
280
   IC("edit-redo")
281
   IC("edit-undo")
282
   IC("edit-select-all")
283
   IC("folder-copy")
284
   IC("folder-move")
285
   IC("folder-new")
286
   IC("format-indent-less")
287
   IC("format-indent-more")
288
   IC("format-justify-center")
289
   IC("format-justify-fill")
290
   IC("format-justify-left")
291
   IC("format-justify-right")
292
   IC("format-text-direction-ltr")
293
   IC("format-text-direction-rtl")
294
   IC("format-text-bold")
295
   IC("format-text-italic")
296
   IC("format-text-underline")
297
   IC("format-text-strikethrough")
298
   IC("go-home")
299
   IC("go-bottom")
300
   IC("go-down")
301
   IC("go-first")
302
   IC("go-jump")
303
   IC("go-last")
304
   IC("go-next")
305
   IC("go-previous")
306
   IC("go-top")
307
   IC("go-up")
308
   IC("insert-image")
309
   IC("insert-link")
310
   IC("insert-object")
311
   IC("insert-text")
312
   IC("list-add")
313
   IC("list-remove")
314
   IC("mail-forward")
315
   IC("mail-mark-important")
316
   IC("mail-mark-junk")
317
   IC("mail-mark-notjunk")
318
   IC("mail-mark-read")
319
   IC("mail-mark-unread")
320
   IC("mail-message-new")
321
   IC("mail-reply-all")
322
   IC("mail-reply-sender")
323
   IC("mail-send")
324
   IC("mail-send-receive")
325
   IC("media-eject")
326
   IC("media-playback-pause")
327
   IC("media-playback-start")
328
   IC("media-playback-stop")
329
   IC("media-record")
330
   IC("media-seek-backward")
331
   IC("media-seek-forward")
332
   IC("media-skip-backward")
333
   IC("media-skip-forward")
334
   IC("object-flip-horizontal")
335
   IC("object-flip-vertical")
336
   IC("object-rotate-left")
337
   IC("object-rotate-right")
338
   IC("process-stop")
339
   IC("tools-check-spelling")
340
   IC("view-list-compact")
341
   IC("view-list-details")
342
   IC("view-list-icons")
343
   IC("view-fullscreen")
344
   IC("view-refresh")
345
   IC("view-restore")
346
   IC("view-sort-ascending")
347
   IC("view-sort-descending")
348
   IC("view-close")
349
   IC("window-close")
350
   IC("window-new")
351
   IC("system-run")
352
   IC("system-shutdown")
353
   IC("system-reboot")
354
   IC("system-lock-screen")
355
   IC("system-log-out")
356
   IC("system-search")
357
   IC("help-about")
358
   IC("help-contents")
359
   IC("help-faq")
360
   IC("zoom-in")
361
   IC("zoom-out")
362
   IC("zoom-original")
363
   IC("zoom-fit")
364
   IC("zoom-fill")
365
   IC("zoom-fit-best")
366

367
   CONTEXT("Status")
368
   IC("appointment-missed")
369
   IC("appointment-soon")
370
   IC("audio-volume-high")
371
   IC("audio-volume-low")
372
   IC("audio-volume-medium")
373
   IC("audio-volume-muted")
374
   IC("audio-volume")
375
   IC("battery-caution")
376
   IC("battery-empty")
377
   IC("battery-low")
378
   IC("battery-good")
379
   IC("battery-full")
380
   IC("battery-caution-charging")
381
   IC("battery-empty-charging")
382
   IC("battery-low-charging")
383
   IC("battery-good-charging")
384
   IC("battery-full-charging")
385
   IC("bluetooth-active")
386
   IC("bluetooth-disabled")
387
   IC("changes-allow")
388
   IC("changes-prevent")
389
   IC("dialog-error")
390
   IC("dialog-information")
391
   IC("dialog-password")
392
   IC("dialog-question")
393
   IC("dialog-warning")
394
   IC("media-playlist-repeat")
395
   IC("media-playlist-shuffle")
396
   IC("network-cellular-3g")
397
   IC("network-cellular-4g")
398
   IC("network-cellular-edge")
399
   IC("network-cellular-gprs")
400
   IC("network-cellular-umts")
401
   IC("network-cellular-connected")
402
   IC("network-cellular-signal-excellent")
403
   IC("network-cellular-signal-good")
404
   IC("network-cellular-signal-none")
405
   IC("network-cellular-signal-ok")
406
   IC("network-cellular-signal-weak")
407
   IC("network-cellular-signal-acquiring")
408
   IC("network-error")
409
   IC("network-offline")
410
   IC("network-receive")
411
   IC("network-transmit-receive")
412
   IC("network-transmit")
413
   IC("network-idle")
414
   IC("network-vpn")
415
   IC("network-vpn-acquiring")
416
   IC("network-wireless-acquiring")
417
   IC("network-wireless-encrypted")
418
   IC("network-wireless-signal-excellent")
419
   IC("network-wireless-signal-good")
420
   IC("network-wireless-signal-none")
421
   IC("network-wireless-signal-ok")
422
   IC("network-wireless-signal-weak")
423
   IC("printer-error")
424
   IC("printer-printing")
425
   IC("printer-warning")
426
   IC("security-high")
427
   IC("security-medium")
428
   IC("security-low")
429
   IC("software-update-available")
430
   IC("software-update-urgent")
431
   IC("task-due")
432
   IC("task-past-due")
433
   IC("user-available")
434
   IC("user-away")
435
   IC("user-busy")
436
   IC("user-invisible")
437
   IC("user-idle")
438
   IC("user-offline")
439
   IC("user-trash-full")
440
   IC("weather-clear-night")
441
   IC("weather-clear")
442
   IC("weather-clouds-night")
443
   IC("weather-clouds")
444
   IC("weather-few-clouds-night")
445
   IC("weather-few-clouds")
446
   IC("weather-fog")
447
   IC("weather-overcast")
448
   IC("weather-severe-alert")
449
   IC("weather-showers-scattered")
450
   IC("weather-showers")
451
   IC("weather-snow")
452
   IC("weather-storm")
453
   IC("mail-attachment")
454
   IC("mail-unread")
455
   IC("mail-read")
456
   IC("mail-replied")
457
   IC("mail-signed")
458
   IC("mail-signed-verified")
459
   IC("starred")
460
   IC("non-starred")
461

462
   CONTEXT("Devices")
463
   IC("audio-card")
464
   IC("audio-input-microphone")
465
   IC("battery")
466
   IC("camera")
467
   IC("camera-photo")
468
   IC("camera-web")
469
   IC("camera-video")
470
   IC("drive-harddisk")
471
   IC("drive-harddisk-ieee1394")
472
   IC("drive-harddisk-usb")
473
   IC("drive-optical")
474
   IC("drive-removable-media")
475
   IC("drive-removable-media-ieee1394")
476
   IC("drive-removable-media-usb")
477
   IC("computer")
478
   IC("computer-laptop")
479
   IC("multimedia-player")
480
   IC("media-optical")
481
   IC("media-optical-cd")
482
   IC("media-optical-audio")
483
   IC("media-optical-dvd")
484
   IC("media-optical-bd")
485
   IC("media-flash")
486
   IC("media-flash-cf")
487
   IC("media-flash-ms")
488
   IC("media-flash-sd")
489
   IC("media-flash-sm")
490
   IC("media-floppy")
491
   IC("media-zip")
492
   IC("media-tape")
493
   IC("media-memory")
494
   IC("processor")
495
   IC("input-mouse")
496
   IC("input-tablet")
497
   IC("input-keyboard")
498
   IC("input-gaming")
499
   IC("pda")
500
   IC("phone")
501
   IC("printer")
502
   IC("scanner")
503
   IC("modem")
504
   IC("video-display")
505
   IC("network-wired")
506
   IC("network-wireless")
507

508
   CONTEXT("Categories")
509
   IC("applications-accessories")
510
   IC("applications-development")
511
   IC("applications-games")
512
   IC("applications-graphics")
513
   IC("applications-internet")
514
   IC("applications-multimedia")
515
   IC("applications-office")
516
   IC("applications-other")
517
   IC("applications-science")
518
   IC("applications-system")
519
   IC("applications-utilities")
520
   IC("preferences-desktop")
521
   IC("preferences-system")
522
   IC("preferences-other")
523

524
   CONTEXT("Applications")
525
   IC("preferences-color")
526
   IC("preferences-profile")
527
   IC("preferences-desktop-display")
528
   IC("preferences-desktop-font")
529
   IC("preferences-desktop-keyboard")
530
   IC("preferences-desktop-locale")
531
   IC("preferences-desktop-multimedia")
532
   IC("preferences-desktop-screensaver")
533
   IC("preferences-desktop-theme")
534
   IC("preferences-desktop-wallpaper")
535
   IC("system-file-manager")
536

537
   CONTEXT("International")
538
   IC("flag-ad")
539
   IC("flag-af")
540
   IC("flag-al")
541
   IC("flag-am")
542
   IC("flag-ar")
543
   IC("flag-at")
544
   IC("flag-au")
545
   IC("flag-az")
546
   IC("flag-ba")
547
   IC("flag-bd")
548
   IC("flag-be")
549
   IC("flag-bg")
550
   IC("flag-br")
551
   IC("flag-bt")
552
   IC("flag-bw")
553
   IC("flag-by")
554
   IC("flag-ca")
555
   IC("flag-cd")
556
   IC("flag-ch")
557
   IC("flag-cm")
558
   IC("flag-cn")
559
   IC("flag-cz")
560
   IC("flag-de")
561
   IC("flag-dk")
562
   IC("flag-ee")
563
   IC("flag-es")
564
   IC("flag-et")
565
   IC("flag-fi")
566
   IC("flag-fo")
567
   IC("flag-fr")
568
   IC("flag-gb")
569
   IC("flag-ge")
570
   IC("flag-gh")
571
   IC("flag-gn")
572
   IC("flag-gr")
573
   IC("flag-hr")
574
   IC("flag-hu")
575
   IC("flag-ie")
576
   IC("flag-il")
577
   IC("flag-in")
578
   IC("flag-iq")
579
   IC("flag-ir")
580
   IC("flag-is")
581
   IC("flag-it")
582
   IC("flag-jp")
583
   IC("flag-ke")
584
   IC("flag-kg")
585
   IC("flag-kh")
586
   IC("flag-kr")
587
   IC("flag-ku")
588
   IC("flag-kz")
589
   IC("flag-la")
590
   IC("flag-lk")
591
   IC("flag-lt")
592
   IC("flag-lv")
593
   IC("flag-ma")
594
   IC("flag-md")
595
   IC("flag-me")
596
   IC("flag-mk")
597
   IC("flag-ml")
598
   IC("flag-mm")
599
   IC("flag-mn")
600
   IC("flag-mt")
601
   IC("flag-mv")
602
   IC("flag-my")
603
   IC("flag-ng")
604
   IC("flag-nl")
605
   IC("flag-no")
606
   IC("flag-np")
607
   IC("flag-ph")
608
   IC("flag-pk")
609
   IC("flag-pl")
610
   IC("flag-pt")
611
   IC("flag-ro")
612
   IC("flag-rs")
613
   IC("flag-ru")
614
   IC("flag-se")
615
   IC("flag-si")
616
   IC("flag-sk")
617
   IC("flag-sn")
618
   IC("flag-sy")
619
   IC("flag-th")
620
   IC("flag-tj")
621
   IC("flag-tm")
622
   IC("flag-tr")
623
   IC("flag-tw")
624
   IC("flag-tz")
625
   IC("flag-ua")
626
   IC("flag-us")
627
   IC("flag-uz")
628
   IC("flag-vn")
629
   IC("flag-za")
630

631
   CONTEXT("Mimetypes")
632
   IC("inode-directory")
633

634
#undef CONTEXT
635
#undef IC
636

637
   elm_genlist_item_class_free(itc);
638
   elm_genlist_item_class_free(itc_g);
639
}
640

641
static void
642
_rdg_changed_cb(void *data, Evas_Object *obj EINA_UNUSED,
643
                void *event_info EINA_UNUSED)
644
{
645
   Evas_Object *li = data;
646

647
   elm_genlist_realized_items_update(li);
648
}
649

650
static void
651
_slider_changed_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
652
{
653
   Evas_Object *icon = data;
654
   int size = (int)elm_slider_value_get(obj);
655

656
   evas_object_size_hint_min_set(icon, size, size);
657
}
658

659
static void
660
_list_selected_cb(void *data EINA_UNUSED, Evas_Object *obj, void *event_info)
661
{
662
   Elm_Object_Item *list_it = event_info;
663
   Evas_Object *icon = evas_object_data_get(obj, "resize_icon");
664

665
   elm_icon_standard_set(icon, elm_object_item_text_get(list_it));
666
}
667

668
static void
669
_std_btn_clicked_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
670
                    void *event_info EINA_UNUSED)
671
{
672
   Evas_Object *win, *panes, *icon;
673

674
   win = elm_win_util_standard_add("icon-test-std-auto", "Icon Standard");
675
   elm_win_autodel_set(win, EINA_TRUE);
676

677
   panes = elm_panes_add(win);
678
   evas_object_size_hint_weight_set(panes, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
679
   elm_panes_content_left_min_size_set(panes, 16);
680
   elm_panes_content_right_min_size_set(panes, 16);
681
   elm_win_resize_object_add(win, panes);
682
   evas_object_show(panes);
683

684
   icon = elm_icon_add(panes);
685
   evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
686
   evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, EVAS_HINT_FILL);
687
   elm_icon_standard_set(icon, "folder");
688
   elm_object_part_content_set(panes, "left", icon);
689
   evas_object_show(icon);
690

691
   icon = elm_icon_add(panes);
692
   evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
693
   evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, EVAS_HINT_FILL);
694
   elm_icon_standard_set(icon, "user-home");
695
   elm_object_part_content_set(panes, "right", icon);
696
   evas_object_show(icon);
697

698
   evas_object_resize(win, 300 * elm_config_scale_get(),
699
                           200 * elm_config_scale_get());
700
   evas_object_show(win);
701
}
702

703
void
704
test_icon_standard(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
705
                   void *event_info EINA_UNUSED)
706
{
707
   Evas_Object *win, *li, *box, *hbox, *fr, *rd, *rdg, *label, *icon, *sl, *bt;
708

709
   win = elm_win_util_standard_add("icon-test-std", "Icon Standard");
710
   elm_win_autodel_set(win, EINA_TRUE);
711

712
   box = elm_box_add(win);
713
   evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
714
   elm_win_resize_object_add(win, box);
715
   evas_object_show(box);
716

717
   li = elm_genlist_add(box);
718
   evas_object_size_hint_expand_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
719
   evas_object_size_hint_fill_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
720
   evas_object_smart_callback_add(li, "selected", _list_selected_cb, NULL);
721
   evas_object_show(li);
722

723
   // lookup order
724
   fr = elm_frame_add(box);
725
   elm_object_text_set(fr, "standard icon order lookup");
726
   evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, 0.0);
727
   elm_box_pack_end(box, fr);
728
   evas_object_show(fr);
729

730
   hbox = elm_box_add(fr);
731
   elm_box_horizontal_set(hbox, EINA_TRUE);
732
   elm_object_content_set(fr, hbox);
733
   evas_object_show(hbox);
734

735
   label = elm_label_add(hbox);
736
   elm_object_text_set(label, "Lookup order has moved to elementary_config");
737
   elm_box_pack_end(hbox, label);
738
   evas_object_show(label);
739

740
   // size
741
   fr = elm_frame_add(box);
742
   elm_object_text_set(fr, "standard icon size");
743
   evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, 0.0);
744
   elm_box_pack_end(box, fr);
745
   evas_object_show(fr);
746
   
747
   hbox = elm_box_add(fr);
748
   elm_box_horizontal_set(hbox, EINA_TRUE);
749
   elm_object_content_set(fr, hbox);
750
   evas_object_show(hbox);
751

752
   rdg = elm_radio_add(hbox);
753
   elm_radio_state_value_set(rdg, 0);
754
   elm_object_text_set(rdg, "Free");
755
   elm_box_pack_end(hbox, rdg);
756
   evas_object_show(rdg);
757
   evas_object_smart_callback_add(rdg, "changed", _rdg_changed_cb, li);
758
   evas_object_data_set(li, "size_rdg", rdg);
759

760
   rd = elm_radio_add(hbox);
761
   elm_radio_state_value_set(rd, 16);
762
   elm_radio_group_add(rd, rdg);
763
   elm_object_text_set(rd, "16");
764
   elm_box_pack_end(hbox, rd);
765
   evas_object_show(rd);
766
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
767

768
   rd = elm_radio_add(hbox);
769
   elm_radio_state_value_set(rd, 22);
770
   elm_radio_group_add(rd, rdg);
771
   elm_object_text_set(rd, "22");
772
   elm_box_pack_end(hbox, rd);
773
   evas_object_show(rd);
774
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
775

776
   rd = elm_radio_add(hbox);
777
   elm_radio_state_value_set(rd, 24);
778
   elm_radio_group_add(rd, rdg);
779
   elm_object_text_set(rd, "24");
780
   elm_box_pack_end(hbox, rd);
781
   evas_object_show(rd);
782
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
783

784
   rd = elm_radio_add(hbox);
785
   elm_radio_state_value_set(rd, 32);
786
   elm_radio_group_add(rd, rdg);
787
   elm_object_text_set(rd, "32");
788
   elm_box_pack_end(hbox, rd);
789
   evas_object_show(rd);
790
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
791

792
   rd = elm_radio_add(hbox);
793
   elm_radio_state_value_set(rd, 48);
794
   elm_radio_group_add(rd, rdg);
795
   elm_object_text_set(rd, "48");
796
   elm_box_pack_end(hbox, rd);
797
   evas_object_show(rd);
798
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
799

800
   rd = elm_radio_add(hbox);
801
   elm_radio_state_value_set(rd, 64);
802
   elm_radio_group_add(rd, rdg);
803
   elm_object_text_set(rd, "64");
804
   elm_box_pack_end(hbox, rd);
805
   evas_object_show(rd);
806
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
807

808
   rd = elm_radio_add(hbox);
809
   elm_radio_state_value_set(rd, 128);
810
   elm_radio_group_add(rd, rdg);
811
   elm_object_text_set(rd, "128");
812
   elm_box_pack_end(hbox, rd);
813
   evas_object_show(rd);
814
   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, li);
815

816
   // populate and pack the list
817
   _standard_genlist_populate(li);
818
   elm_box_pack_end(box, li);
819

820
   // live resize
821
   fr = elm_frame_add(box);
822
   elm_object_text_set(fr, "live resize");
823
   evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, 0.0);
824
   elm_box_pack_end(box, fr);
825
   evas_object_show(fr);
826
   
827
   hbox = elm_box_add(fr);
828
   elm_object_content_set(fr, hbox);
829
   evas_object_show(hbox);
830

831
   icon = elm_icon_add(hbox);
832
   elm_icon_standard_set(icon, "folder");
833
   evas_object_size_hint_min_set(icon, 16, 16);
834
   elm_box_pack_end(hbox, icon);
835
   evas_object_show(icon);
836
   evas_object_data_set(li, "resize_icon", icon);
837

838
   sl = elm_slider_add(hbox);
839
   elm_object_text_set(sl, "min_size");
840
   elm_slider_min_max_set(sl, 16, 256);
841
   elm_slider_value_set(sl, 16);
842
   elm_slider_unit_format_set(sl, "%.0f px");
843
   evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, 0.0);
844
   evas_object_size_hint_align_set(sl, EVAS_HINT_FILL, 0.0);
845
   evas_object_smart_callback_add(sl, "changed", _slider_changed_cb, icon);
846
   elm_box_pack_end(hbox, sl);
847
   evas_object_show(sl);
848

849
   bt = elm_button_add(box);
850
   elm_object_text_set(bt, "Another size test, without using min_size");
851
   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
852
   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, 0.0);
853
   evas_object_smart_callback_add(bt, "clicked", _std_btn_clicked_cb, NULL);
854
   elm_box_pack_end(box, bt);
855
   evas_object_show(bt);
856

857
   // show the win
858
   evas_object_resize(win, 300 * elm_config_scale_get(),
859
                           500 * elm_config_scale_get());
860
   evas_object_show(win);
861
}
862

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.