ltkx

GUI toolkit for X11 (old)
git clone git://lumidify.org/ltkx.git (fast, but not encrypted)
git clone https://lumidify.org/ltkx.git (encrypted, but very slow)
git clone git://4kcetb7mo7hj6grozzybxtotsub5bempzo4lirzc3437amof2c2impyd.onion/ltkx.git (over tor)
Log | Files | Refs | README | LICENSE

test1.c (1577B)


      1 #include "ltkx.h"
      2 
      3 void bob1(void *widget, XEvent event, void *data)
      4 {
      5 	printf("bob\n");
      6 }
      7 
      8 void bob2(void *widget, XEvent event, void *data)
      9 {
     10 	LtkButton *button = widget;
     11 	if (button->widget.state == LTK_HOVERACTIVE) {
     12 		ltk_quit();
     13 	}
     14 }
     15 
     16 void bob3(LtkButton *button, XEvent event, LtkTextEdit *edit) {
     17 	ltk_text_edit_insert_text(edit, "asd");
     18 }
     19 
     20 int main(int argc, char *argv[])
     21 {
     22 	ltk_init("themes/default.ini");
     23 	LtkWindow *window1 = ltk_create_window("Cool Window!", 0, 0, 500, 500);
     24 	LtkGrid *grid1 = ltk_create_grid(window1, 2, 2);
     25 	window1->root_widget = grid1;
     26 	ltk_set_row_weight(grid1, 0, 1);
     27 	ltk_set_row_weight(grid1, 1, 1);
     28 	ltk_set_column_weight(grid1, 0, 1);
     29 	ltk_set_column_weight(grid1, 1, 1);
     30 	/* Test callback functions */
     31 	LtkButton *button1 = ltk_button_create(window1, "I'm a button!", &bob1, NULL);
     32 	ltk_grid_widget(button1, grid1, 0, 0, 1, 1, LTK_STICKY_LEFT | LTK_STICKY_RIGHT);
     33 	/* Test manual callback functions */
     34 	LtkButton *button2 = ltk_button_create(window1, "I'm a button!", NULL, NULL);
     35 	button2->widget.mouse_release = &bob2;
     36 	ltk_grid_widget(button2, grid1, 0, 1, 1, 1, LTK_STICKY_TOP | LTK_STICKY_BOTTOM);
     37 	LtkTextEdit *edit = ltk_text_edit_create(window1, "ہمارے بارے میں blabla bla");
     38 	LtkButton *button4 = ltk_button_create(window1, "ہمارے بارے میں blablabla", &bob3, edit);
     39 	ltk_grid_widget(button4, grid1, 1, 0, 1, 1, LTK_STICKY_TOP | LTK_STICKY_BOTTOM | LTK_STICKY_RIGHT);
     40 	ltk_grid_widget(edit, grid1, 1, 1, 1, 1, LTK_STICKY_LEFT | LTK_STICKY_BOTTOM | LTK_STICKY_TOP | LTK_STICKY_RIGHT);
     41 	ltk_mainloop();
     42 }