imtk

annotate src/imtk.h @ 5:09b6e8a5dc14

reorganizing the code
author John Tsiombikas <nuclear@member.fsf.org>
date Thu, 14 Apr 2011 14:22:20 +0300
parents 00a4ea4ee6dc
children 6d35e6c7b2ca
rev   line source
nuclear@0 1 #ifndef IMTK_H_
nuclear@0 2 #define IMTK_H_
nuclear@0 3
nuclear@5 4 #include <stdlib.h>
nuclear@5 5
nuclear@5 6
nuclear@4 7 #define IMUID (__LINE__ << 10)
nuclear@4 8 #define IMUID_IDX(i) ((__LINE__ << 10) + ((i) << 1))
nuclear@1 9
nuclear@1 10
nuclear@0 11 /* key/button state enum */
nuclear@0 12 enum {
nuclear@0 13 IMTK_UP,
nuclear@0 14 IMTK_DOWN
nuclear@0 15 };
nuclear@0 16
nuclear@0 17 enum {
nuclear@0 18 IMTK_LEFT_BUTTON,
nuclear@0 19 IMTK_MIDDLE_BUTTON,
nuclear@0 20 IMTK_RIGHT_BUTTON
nuclear@0 21 };
nuclear@0 22
nuclear@0 23 void imtk_inp_key(int key, int state);
nuclear@0 24 void imtk_inp_mouse(int bn, int state);
nuclear@0 25 void imtk_inp_motion(int x, int y);
nuclear@0 26 void imtk_inp_reshape(int x, int y);
nuclear@0 27
nuclear@5 28 void imtk_post_redisplay(void);
nuclear@5 29
nuclear@0 30 void imtk_begin(void);
nuclear@0 31 void imtk_end(void);
nuclear@0 32
nuclear@0 33 int imtk_button(int id, const char *label, int x, int y);
nuclear@1 34 int imtk_checkbox(int id, const char *label, int x, int y, int state);
nuclear@2 35 void imtk_textbox(int id, char *textbuf, size_t buf_sz, int x, int y);
nuclear@3 36 float imtk_slider(int id, float pos, float min, float max, int x, int y);
nuclear@3 37 void imtk_progress(int id, float pos, int x, int y);
nuclear@4 38 int imtk_listbox(int id, const char *list, int sel, int x, int y);
nuclear@4 39 int imtk_combobox(int id, char *textbuf, size_t buf_sz, const char *list, int sel, int x, int y);
nuclear@4 40
nuclear@4 41 /* helper functions to create and destroy item lists for listboxes and comboboxes */
nuclear@4 42 char *imtk_create_list(const char *first, ...);
nuclear@4 43 void imtk_free_list(char *list);
nuclear@0 44
nuclear@0 45 #endif /* IMTK_H_ */