2 #include <gdk/gdkkeysyms.h>
5 gboolean
key_press_cb(GtkWidget
*w
, GdkEvent
*e
, gpointer d
) {
6 switch (e
->key
.keyval
) {
7 case GDK_q
: gtk_main_quit();
9 case GDK_w
: printf("joooooooo\n");
10 // game_win->move_up();
12 default: return FALSE
;
19 int main(int argc
, char **argv
) {
20 gtk_init(&argc
, &argv
);
22 GtkWidget
*main_win
= gtk_window_new(GTK_WINDOW_TOPLEVEL
);
24 gtk_window_set_title(GTK_WINDOW(main_win
), "Deadly Blades of Exile");
26 gtk_widget_add_events(main_win
, GDK_KEY_PRESS_MASK
);
27 g_signal_connect(main_win
, "key-press-event", G_CALLBACK(key_press_cb
), NULL
);
28 g_signal_connect(main_win
, "destroy", G_CALLBACK(gtk_main_quit
), NULL
);
30 GtkWidget
*game_win
= world_area_new();
31 // GtkDrawingArea *game_win = GTK_DRAWING_AREA(gtk_drawing_area_new());
32 gtk_drawing_area_size(GTK_DRAWING_AREA(game_win
), 400, 400);
33 //g_signal_connect(G_OBJECT(game_win), "expose_event", G_CALLBACK(expose_cb), NULL);
34 //set_keys(game_win, keys)
39 GtkToolbar
*toolbar
= GTK_TOOLBAR(gtk_toolbar_new());
40 gtk_toolbar_set_orientation(toolbar
, GTK_ORIENTATION_HORIZONTAL
);
41 gtk_toolbar_set_style(toolbar
, GTK_TOOLBAR_TEXT
);
42 gtk_toolbar_set_tooltips(toolbar
, FALSE
);
44 GtkToolItem
*btn1
= gtk_tool_button_new(NULL
, "one");
45 GtkToolItem
*btn2
= gtk_tool_button_new(NULL
, "two");
46 gtk_toolbar_insert(toolbar
, btn1
, -1);
47 gtk_toolbar_insert(toolbar
, btn2
, -1);
49 GtkListStore
*list1
= gtk_list_store_new(1, G_TYPE_STRING
);
51 gtk_list_store_append(list1
, &l_i
);
52 gtk_list_store_set(list1
, &l_i
, 0, "Tralala", -1);
53 gtk_list_store_append(list1
, &l_i
);
54 gtk_list_store_set(list1
, &l_i
, 0, "Mnum", -1);
56 GtkWidget
*tree1
= gtk_tree_view_new_with_model(GTK_TREE_MODEL(list1
));
57 GtkTreeViewColumn
*col1
= gtk_tree_view_column_new();
58 GtkCellRenderer
*cell1
= gtk_cell_renderer_text_new();
60 gtk_tree_view_column_set_title(col1
, "Sloupec");
61 gtk_tree_view_append_column(GTK_TREE_VIEW(tree1
), col1
);
62 gtk_tree_view_column_pack_start(col1
, cell1
, TRUE
);
63 gtk_tree_view_column_add_attribute(col1
, cell1
, "text", 0);
65 GtkWidget
*v_gt
= gtk_vbox_new(FALSE
, 0);
66 GtkWidget
*v_inv
= gtk_vbox_new(FALSE
, 0);
67 GtkWidget
*h_all
= gtk_hbox_new(FALSE
, 0);
68 gtk_box_pack_start(GTK_BOX(v_gt
), GTK_WIDGET(game_win
), FALSE
, FALSE
, 0);
69 gtk_box_pack_start(GTK_BOX(v_gt
), GTK_WIDGET(toolbar
), FALSE
, FALSE
, 0);
70 gtk_box_pack_start(GTK_BOX(v_inv
), GTK_WIDGET(tree1
), FALSE
, FALSE
, 0);
71 gtk_box_pack_start(GTK_BOX(h_all
), v_gt
, FALSE
, FALSE
, 0);
72 gtk_box_pack_start(GTK_BOX(h_all
), v_inv
, TRUE
, TRUE
, 0);
73 gtk_container_add(GTK_CONTAINER(main_win
), GTK_WIDGET(h_all
));
76 gdk_color_parse("#FF0000", &color
);
77 gtk_widget_modify_bg(GTK_WIDGET(game_win
), GTK_STATE_NORMAL
, &color
);
78 gdk_color_parse("#00FF00", &color
);
79 gtk_widget_modify_bg(GTK_WIDGET(toolbar
), GTK_STATE_NORMAL
, &color
);
80 gdk_color_parse("#0000FF", &color
);
81 gtk_widget_modify_bg(GTK_WIDGET(tree1
), GTK_STATE_NORMAL
, &color
);
83 gtk_widget_show_all(main_win
);