efl

Форк
0
/
layout_example.js 
69 строк · 2.0 Кб
1
path = require('path');
2
efl = require('efl');
3
Evas = efl.Evas;
4
Elm = efl.Elm;
5

6
win = new efl.Efl.Ui.Win(null, "Efl JS Example", efl.Efl.Ui.Win.Type.BASIC, "hw");
7
win.setText('Layout');
8
win.setAutohide(true);
9

10
box = new efl.Efl.Ui.Box(win);
11
box.setHintWeight(1.0, 1.0);
12
win.setContent(box);
13
box.setVisible(true);
14

15
ly = new Efl.Ui.Layout(box);
16

17
if (!ly.setTheme("layout", "application", "titlebar"))
18
{
19
    console.log('Error setting layout');
20
}
21

22
ly.setPartText('elm.text', 'Some title');
23
ly.setHintWeight(1.0, 1.0);
24
ly.setHintAlign(1.0, 1.0);
25
box.packEnd(ly);
26
ly.setVisible(true);
27

28
bt = new efl.Efl.Ui.Image(ly);
29
bt.setIcon('chat');
30
bt.setHintMin(20, 20);
31
// elm_layout_icon_set(ly, bt);
32
icon_container = ly.part('elm.swallow.icon').cast('Efl.Content');
33
icon_container.setContent(bt);
34
ly.emitSignal('elm,state,icon,visible', 'elm');
35

36
bt = new efl.Efl.Ui.Image(ly);
37
bt.setIcon('close');
38
bt.setHintMin(20, 20);
39
// elm_layout_end_set(ly, bt);
40
end_container = ly.part('elm.swallow.end').cast('Efl.Content');
41
end_container.setContent(bt);
42
ly.emitSignal('elm,state,end,visible', 'elm');
43

44
ly = new Efl.Ui.Layout(box);
45
filename = path.join(__dirname, 'layout_example.edj');
46
ly.setFile(filename, 'example/mylayout');
47
ly.setHintWeight(1.0, 1.0);
48
box.packEnd(ly);
49
ly.setVisible(true);
50

51
//elm_layout_signal_callback_add(ly, "*", "*", _cb_signal, NULL);
52
// I hope to translate to:
53
//ly.on_layout('*', '*', function(emission, source)
54
//             { console.log("signal: '" + emission + "' '" + source + "'");});
55

56
bt = new efl.Efl.Ui.Button(ly);
57
bt.setPartText(null, "Button 1");
58
console.log("Will get part");
59
element_container = ly.part('example/custom').cast('Efl.Content');
60
console.log("Will setcontent on part");
61
element_container.setContent(bt);
62

63
bt.on("clicked", function() { console.log('button clicked'); });
64

65
ly.setPartCursor("example/title", 'watch');
66
ly.on('mouse,down', function() { console.log('layout mouse down') });
67
ly.on('mouse,up', function() { console.log('layout mouse up') });
68

69
win.setVisible(true);
70

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

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

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

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