Rev 6456 | Rev 6466 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
6457 | punk_joker | 1 | #include |
6391 | ashmew2 | 2 | |
3 | int main() |
||
4 | { |
||
6395 | siemargl | 5 | /* Load all libraries, initialize global tables like system color table and |
6391 | ashmew2 | 6 | operations table. kolibri_gui_init() will EXIT with mcall -1 if it fails |
7 | to do it's job. This is all you need to call and all libraries and GUI |
||
8 | elements can be used after a successful call to this function |
||
9 | */ |
||
10 | kolibri_gui_init(); |
||
11 | /* Set gui_event to REDRAW so that window is drawn in first iteration */ |
||
12 | unsigned int gui_event = KOLIBRI_EVENT_REDRAW; |
||
6393 | punk_joker | 13 | oskey_t key; |
6391 | ashmew2 | 14 | |
6457 | punk_joker | 15 | kolibri_window *main_window = kolibri_new_window(50, 50, 400, 100, "BoardMsg: OpenDialog 0.12"); |
16 | check_box *checkbox = kolibri_new_check_box(20, 40, 12, 12, "Append BOARDMSG to entered message."); |
||
17 | edit_box *textbox = kolibri_new_edit_box(20, 55, 40); |
||
18 | kolibri_button *button = kolibri_new_button(310, 55, 24, 14, 0x21, kolibri_color_table.color_work_button); |
||
6395 | siemargl | 19 | |
6391 | ashmew2 | 20 | kolibri_window_add_element(main_window, KOLIBRI_EDIT_BOX, textbox); |
21 | kolibri_window_add_element(main_window, KOLIBRI_CHECK_BOX, checkbox); |
||
22 | kolibri_window_add_element(main_window, KOLIBRI_BUTTON, button); |
||
6395 | siemargl | 23 | |
6397 | siemargl | 24 | extern volatile unsigned press_key; |
6395 | siemargl | 25 | |
6391 | ashmew2 | 26 | do /* Start of main activity loop */ |
27 | { |
||
28 | if(gui_event == KOLIBRI_EVENT_REDRAW) |
||
29 | { |
||
30 | kolibri_handle_event_redraw(main_window); |
||
31 | } |
||
32 | else if(gui_event == KOLIBRI_EVENT_KEY) |
||
6395 | siemargl | 33 | { |
6393 | punk_joker | 34 | key = get_key(); |
35 | switch (key.code) |
||
36 | { |
||
37 | case 13: |
||
6397 | siemargl | 38 | if(checkbox -> flags & CHECKBOX_IS_SET) /* Append BoardMsg checkbox is set */ |
6393 | punk_joker | 39 | debug_board_write_str("BOARDMSG: "); |
40 | |||
41 | debug_board_write_str(textbox->text); |
||
42 | debug_board_write_str("\n"); |
||
43 | break; |
||
44 | } |
||
45 | press_key = key.val; |
||
6397 | siemargl | 46 | |
6391 | ashmew2 | 47 | kolibri_handle_event_key(main_window); |
48 | } |
||
49 | else if(gui_event == KOLIBRI_EVENT_BUTTON) |
||
50 | { |
||
51 | unsigned int pressed_button = kolibri_button_get_identifier(); |
||
6393 | punk_joker | 52 | switch (pressed_button) |
53 | { |
||
54 | case 0x21: |
||
55 | if(checkbox -> flags & CHECKBOX_IS_SET) /* Append BoardMsg checkbox is set */ |
||
56 | debug_board_write_str("BOARDMSG: "); |
||
57 | debug_board_write_str(textbox->text); |
||
58 | debug_board_write_str("\n"); |
||
59 | break; |
||
6457 | punk_joker | 60 | case BUTTON_CLOSE: |
6393 | punk_joker | 61 | kolibri_exit(); |
62 | } |
||
63 | } |
||
6391 | ashmew2 | 64 | else if(gui_event == KOLIBRI_EVENT_MOUSE) |
65 | { |
||
66 | kolibri_handle_event_mouse(main_window); |
||
67 | } |
||
68 | |||
69 | } while(gui_event = get_os_event()); /* End of main activity loop */ |
||
70 | |||
71 | /* kolibri_quit(); */ |
||
72 | |||
73 | return 0; |
||
74 | } |