Rev 7779 | Rev 7781 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7779 | Rev 7780 | ||
---|---|---|---|
Line 77... | Line 77... | ||
77 | { |
77 | { |
78 | menu.cur_y = 0; |
78 | menu.cur_y = 0; |
79 | KillProcess(menu_process_id); |
79 | KillProcess(menu_process_id); |
80 | } |
80 | } |
Line -... | Line 81... | ||
- | 81 | ||
- | 82 | #define MENU_ALIGN_TOP_LEFT 0 |
|
- | 83 | #define MENU_ALIGN_TOP_RIGHT 1 |
|
- | 84 | #define MENU_ALIGN_BOT_LEFT 2 |
|
Line 81... | Line 85... | ||
81 | 85 | #define MENU_ALIGN_BOT_RIGHT 3 |
|
82 | 86 | ||
83 | :dword shared_mem = NULL; |
87 | :dword shared_mem = NULL; |
84 | :char shared_name[] = "LMENU"; |
88 | :char shared_name[] = "LMENU"; |
85 | :void open_lmenu(dword _x, _y, _position, _selected, _text) |
89 | :void open_lmenu(dword _x, _y, _position, _selected, _text) |
86 | { |
90 | { |
87 | if (!shared_mem) { |
91 | if (!shared_mem) { |
88 | shared_mem = memopen(#shared_name, 20, SHM_CREATE); |
92 | shared_mem = memopen(#shared_name, 16, SHM_CREATE + SHM_WRITE); |
- | 93 | if (EDX) shared_mem = memopen(#shared_name, 16, SHM_WRITE); |
|
89 | if (EDX) shared_mem = memopen(#shared_name, 20, SHM_WRITE); |
94 | } |
90 | } |
95 | ESDWORD[shared_mem ] = _selected; |
91 | ESDWORD[shared_mem + 4] = _x; |
96 | ESDWORD[shared_mem + 4] = _x; |
92 | ESDWORD[shared_mem + 8] = _y; |
- | |
93 | ESDWORD[shared_mem + 12] = _position; |
97 | ESDWORD[shared_mem + 8] = _y; |
94 | ESDWORD[shared_mem + 16] = _selected; |
98 | ESDWORD[shared_mem + 12] = _position; |
Line 95... | Line 99... | ||
95 | RunProgram("/sys/develop/menu", _text); |
99 | menu_process_id = RunProgram("/sys/develop/menu", _text); |
96 | } |
100 | } |
97 | 101 | ||
98 | :dword get_menu_click() |
102 | :dword get_menu_click() |
- | 103 | { |
|
99 | { |
104 | if (menu_process_id) && (GetProcessSlot(menu_process_id)) { |
100 | //dword res = ESDWORD[shared_mem]; |
105 | return NULL; |
101 | char res[2]; |
106 | } else { |
102 | ReadFile(0, 2, #res, "/tmp0/1/menu.tmp"); |
107 | menu_process_id = NULL; |
Line 103... | Line 108... | ||
103 | //ESDWORD[shared_mem] = 0; |
108 | return ESDWORD[shared_mem]; |
104 | return res[0]; |
109 | } |