void win_game() { GtkWidget* table; GtkWidget* window; GtkWidget* vbox; char** map; int player; t_pos** pos; player = 1; window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "Reversi"); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); gtk_window_set_default_size(GTK_WINDOW(window), 500, 500); g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(quit), 0); vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(window), vbox); create_menu_bar(vbox, window); table = gtk_table_new(8, 8, TRUE); gtk_container_add(GTK_CONTAINER(vbox), table); map = init_table(); pos = create_pos(); new_button(table, pos, map, &player); gtk_widget_show_all(window); gtk_main(); free_pos(pos); free_table(map); }
Re_node mk_leaf(short opval, short type, char ch, Ch_Set cset) { Re_node node; Re_Lit l; l = (Re_Lit) new_node(l); node = (Re_node) new_node(node); if (l == NULL || node == NULL) return NULL; lit_type(l) = type; lit_pos(l) = pos_cnt++; if (type == C_SET) lit_cset(l) = cset; else lit_char(l) = ch; /* type == C_LIT */ Op(node) = opval; Lit(node) = l; Nullable(node) = FALSE; Firstpos(node) = create_pos(lit_pos(l)); Lastpos(node) = Firstpos(node); return node; }