summaryrefslogtreecommitdiff
path: root/saedit/interface.h.old
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-01-05 03:39:04 +0300
committerAndrei Karas <akaras@inbox.ru>2012-01-05 03:39:04 +0300
commitb9277f939c2505fae2167f6caee4ff8a9e1d0685 (patch)
treedd6a44eedebf82f429de7cd621ca3334bf3ce843 /saedit/interface.h.old
parent7e6fc28069280d94575f8cf03d38574bb86a12c2 (diff)
parent97911ac99f187a7c2c3eb4324b04cbb39b8e9bee (diff)
downloadtools-b9277f939c2505fae2167f6caee4ff8a9e1d0685.tar.gz
tools-b9277f939c2505fae2167f6caee4ff8a9e1d0685.tar.bz2
tools-b9277f939c2505fae2167f6caee4ff8a9e1d0685.tar.xz
tools-b9277f939c2505fae2167f6caee4ff8a9e1d0685.zip
Merge branch 'master' of ssh://gitent-scm.com/git/evol/privtools
Diffstat (limited to 'saedit/interface.h.old')
-rw-r--r--saedit/interface.h.old310
1 files changed, 310 insertions, 0 deletions
diff --git a/saedit/interface.h.old b/saedit/interface.h.old
new file mode 100644
index 0000000..925d5cb
--- /dev/null
+++ b/saedit/interface.h.old
@@ -0,0 +1,310 @@
+/*=======================================*\
+| ____ ____ |
+| / \ /\ | |
+| \____ / \ |____ |
+| \ /____\ | |
+| \____/prite / \nimation |____ditor |
+| |
+| Copyleft Vasily_Makarov 2011 |
+| |
+\*=======================================*/
+
+#include "main.h"
+
+GtkWidget *reload_menu_item = NULL;
+
+void find_menu_item_activate_callback(GtkWidget *menuitem, gpointer user_data) {
+ search_find_dialog_show(win, source_view);
+}
+
+void save_dialog_response_callback(GtkWidget *dialog, gint response_id, gpointer user_data) {
+ if (response_id == GTK_RESPONSE_ACCEPT) {
+ gchar *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
+ if (filename != NULL) {
+ save_to_xml_file(filename);
+ gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(xml_file_chooser_button), filename);
+ }
+ }
+ gtk_widget_destroy(dialog);
+}
+
+void save_dialog_show() {
+ GtkDialog *dialog = gtk_file_chooser_dialog_new(_("Save file as..."), win, GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL);
+ g_signal_connect(dialog, "response", G_CALLBACK(save_dialog_response_callback), NULL);
+ gtk_dialog_run(dialog);
+}
+
+void save_menu_item_activate_callback(GtkWidget *menuitem, GtkWidget *fsdialog) {
+ gchar *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(xml_file_chooser_button));
+ if (filename != NULL)
+ save_to_xml_file(filename);
+ else
+ save_dialog_show();
+}
+
+void xml_file_save_button_callback(GtkWidget *button, gpointer user_data) {
+ gchar *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(xml_file_chooser_button));
+ if (filename != NULL)
+ save_to_xml_file(filename);
+}
+
+void file_new() {
+ GtkTextIter start, end;
+ gtk_text_buffer_get_bounds(source_buffer, &start, &end);
+ gtk_text_buffer_delete(source_buffer, &start, &end);
+ gchar *temp;
+ if (g_file_get_contents(FILE_TEMPLATE, &temp, NULL, NULL))
+ gtk_text_buffer_set_text(GTK_TEXT_BUFFER(source_buffer), temp, -1);
+ gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(xml_file_chooser_button), "");
+ gtk_widget_set_sensitive(reload_menu_item, FALSE);
+}
+
+void set_up_interface() {
+
+ GtkBuilder *builder = gtk_builder_new();
+ gtk_builder_add_from_file(builder, "interface.ui", NULL);
+ gtk_builder_connect_signals(builder, NULL);
+
+ GtkWindow *win1 = GTK_WIDGET(gtk_builder_get_object(builder, "win_main"));
+
+ GtkWidget *button = NULL;
+ GtkWidget *hbox = NULL;
+ GtkWidget *vbox = NULL;
+ GtkWidget *vbbox = NULL;
+ GtkWidget *text = NULL;
+ GtkWidget *label = NULL;
+ GtkWidget *menubar = NULL;
+ GtkWidget *menuitem = NULL;
+ GtkWidget *menu = NULL;
+ GtkWidget *vpaned = NULL;
+ GtkWidget *scrolled_window = NULL;
+ GtkWidget *fcdialog = NULL;
+
+ GtkSourceLanguageManager *langman = gtk_source_language_manager_get_default();
+
+ source_buffer = gtk_source_buffer_new_with_language(gtk_source_language_manager_get_language(langman, "xml"));
+ text = gtk_source_view_new_with_buffer(source_buffer);
+ source_view = text;
+
+ win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title(GTK_WINDOW(win), "Sprite Animation Editor");
+ gtk_window_set_position(GTK_WINDOW(win), GTK_WIN_POS_CENTER);
+ gtk_window_set_icon(GTK_WINDOW(win), icon);
+ gtk_widget_realize(win);
+ g_signal_connect(win, "destroy", G_CALLBACK(save_config_and_quit), NULL);
+ gtk_widget_set_size_request(win, MIN_WIDTH, MIN_HEIGHT);
+ GtkAccelGroup *ag = gtk_accel_group_new();
+ gtk_window_add_accel_group(win, ag);
+
+ fcdialog = gtk_file_chooser_dialog_new(_("Open file"), win, GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
+
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_add(GTK_CONTAINER(win), vbox);
+
+ //Menubar setup
+ menubar = gtk_menu_bar_new();
+ gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
+
+ //File menu
+ menu = gtk_menu_new();
+ gtk_menu_set_accel_group(menu, ag);
+
+ menuitem = gtk_menu_item_new_with_label(_("New"));
+ g_signal_connect(menuitem, "activate", G_CALLBACK(file_new), NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/File/New");
+ gtk_accel_map_change_entry("<MenuItems>/File/New", gdk_keyval_from_name("N"), GDK_CONTROL_MASK, TRUE);
+
+ menuitem = gtk_menu_item_new_with_label(_("Open..."));
+ g_signal_connect(menuitem, "activate", open_menu_item_activate, fcdialog);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/File/Open");
+ gtk_accel_map_change_entry("<MenuItems>/File/Open", gdk_keyval_from_name("O"), GDK_CONTROL_MASK, TRUE);
+
+ menuitem = gtk_menu_item_new_with_label(_("Reload"));
+ gtk_widget_set_sensitive(menuitem, FALSE);
+ g_signal_connect(menuitem, "activate", G_CALLBACK(open_xml_file), NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/File/Reload");
+ gtk_accel_map_change_entry("<MenuItems>/File/Reload", gdk_keyval_from_name("R"), GDK_CONTROL_MASK, TRUE);
+
+ reload_menu_item = menuitem;
+
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), gtk_separator_menu_item_new());
+
+ menuitem = gtk_menu_item_new_with_label(_("Save"));
+ g_signal_connect(menuitem, "activate", G_CALLBACK(save_menu_item_activate_callback), NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/File/Save");
+ gtk_accel_map_change_entry("<MenuItems>/File/Save", gdk_keyval_from_name("S"), GDK_CONTROL_MASK, TRUE);
+
+ menuitem = gtk_menu_item_new_with_label(_("Save as..."));
+ g_signal_connect(menuitem, "activate", G_CALLBACK(save_dialog_show), NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/File/SaveAs");
+ gtk_accel_map_change_entry("<MenuItems>/File/SaveAs", gdk_keyval_from_name("S"), GDK_CONTROL_MASK + GDK_SHIFT_MASK, TRUE);
+
+ menuitem = gtk_menu_item_new_with_label(_("File"));
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menubar), menuitem);
+
+ //Search menu
+ menu = gtk_menu_new();
+ gtk_menu_set_accel_group(menu, ag);
+
+ menuitem = gtk_menu_item_new_with_label(_("Find..."));
+ g_signal_connect(menuitem, "activate", find_menu_item_activate_callback, NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/Search/Find");
+ gtk_accel_map_change_entry("<MenuItems>/Search/Find", gdk_keyval_from_name("F"), GDK_CONTROL_MASK, TRUE);
+
+ menuitem = gtk_menu_item_new_with_label(_("Find next"));
+ g_signal_connect(menuitem, "activate", search_find_next, NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(GTK_MENU_ITEM(menuitem), "<MenuItems>/Search/FindNext");
+ gtk_accel_map_change_entry("<MenuItems>/Search/FindNext", gdk_keyval_from_name("F3"), 0, TRUE);
+
+ menuitem = gtk_menu_item_new_with_label(_("Search"));
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menubar), menuitem);
+
+ //View menu
+ menu = gtk_menu_new();
+ gtk_menu_set_accel_group(menu, ag);
+
+ menuitem = gtk_check_menu_item_new_with_label(_("Show grid"));
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ g_signal_connect(menuitem, "toggled", show_grid_menu_item_toggled, NULL);
+
+ gtk_menu_item_set_accel_path(menuitem, "<MenuItems>/View/ShowGrid");
+ gtk_accel_map_change_entry("<MenuItems>/View/ShowGrid", gdk_keyval_from_name("G"), GDK_CONTROL_MASK, TRUE);
+
+ show_grid_menu_item = menuitem;
+
+ menuitem = gtk_menu_item_new_with_label(_("Imageset preview"));
+ gtk_widget_set_sensitive(menuitem, FALSE);
+ g_signal_connect(G_OBJECT(menuitem), "activate", G_CALLBACK(show_imageset_dialog), NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ gtk_menu_item_set_accel_path(menuitem, "<MenuItems>/View/ImagesetPreview");
+ gtk_accel_map_change_entry("<MenuItems>/View/ImagesetPreview", gdk_keyval_from_name("I"), GDK_CONTROL_MASK, TRUE);
+
+ imageset_preview_menu_item = menuitem;
+
+ menuitem = gtk_menu_item_new_with_label(_("View"));
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menubar), menuitem);
+
+ //Help menu
+ menu = gtk_menu_new();
+ menuitem = gtk_menu_item_new_with_label(_("About"));
+ g_signal_connect(menuitem, "activate", show_about_dialog, NULL);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
+
+ menuitem = gtk_menu_item_new_with_label(_("Help"));
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menubar), menuitem);
+
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, TRUE, 0);
+
+ //Left part setup
+ vbbox = gtk_vbutton_box_new();
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(vbbox), GTK_BUTTONBOX_START);
+ gtk_button_box_set_child_size(GTK_BUTTON_BOX(vbbox), 180, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), vbbox, FALSE, TRUE, 0);
+
+ label = gtk_label_new("");
+ gtk_label_set_markup(GTK_LABEL(label), markup_bold(_("Clientdata folder")));
+ gtk_box_pack_start(GTK_BOX(vbbox), label, TRUE, TRUE, 0);
+
+ data_folder_chooser_button = gtk_file_chooser_button_new(_("Clientdata folder"), 0);
+ gtk_box_pack_start(GTK_BOX(vbbox), data_folder_chooser_button, TRUE, TRUE, 0);
+ gtk_file_chooser_set_action(GTK_FILE_CHOOSER(data_folder_chooser_button), GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);
+ g_signal_connect(data_folder_chooser_button, "selection-changed", G_CALLBACK(data_folder_set_callback), NULL);
+
+ label = gtk_label_new("");
+ gtk_label_set_markup(GTK_LABEL(label), markup_bold(_("XML source file")));
+ gtk_box_pack_start(GTK_BOX(vbbox), label, TRUE, TRUE, 0);
+
+ xml_file_chooser_button = gtk_file_chooser_button_new_with_dialog(fcdialog);
+ gtk_box_pack_start(GTK_BOX(vbbox), xml_file_chooser_button, TRUE, TRUE, 0);
+ g_signal_connect(xml_file_chooser_button, "file-set", G_CALLBACK(open_xml_file), NULL);
+
+ xml_file_open_button = gtk_button_new_from_stock(GTK_STOCK_OPEN);
+ gtk_widget_set_sensitive(xml_file_open_button, FALSE);
+ gtk_box_pack_start(GTK_BOX(vbbox), xml_file_open_button, TRUE, TRUE, 0);
+ g_signal_connect(xml_file_open_button, "clicked", G_CALLBACK(open_xml_file), NULL);
+
+ xml_file_save_button = gtk_button_new_from_stock(GTK_STOCK_SAVE);
+ gtk_widget_set_sensitive(xml_file_save_button, FALSE);
+ gtk_box_pack_start(GTK_BOX(vbbox), xml_file_save_button, TRUE, TRUE, 0);
+ g_signal_connect(xml_file_save_button, "clicked", G_CALLBACK(xml_file_save_button_callback), NULL);
+ gtk_widget_set_accel_path(xml_file_save_button, "<Buttons>/SaveXMLBuffer", ag);
+ //gtk_accel_map_change_entry("<Buttons>/SaveXMLBuffer", gdk_keyval_from_name("S"), GDK_CONTROL_MASK, TRUE);
+
+ button = gtk_button_new_with_label(_("Parse XML buffer"));
+ gtk_box_pack_start(GTK_BOX(vbbox), button, TRUE, TRUE, 0);
+ g_signal_connect(button, "clicked", G_CALLBACK(parse_xml_buffer), NULL);
+ gtk_widget_set_accel_path(button, "<Buttons>/ParseXMLBuffer", ag);
+ gtk_accel_map_change_entry("<Buttons>/ParseXMLBuffer", gdk_keyval_from_name("P"), GDK_CONTROL_MASK, TRUE);
+
+ label = gtk_label_new("");
+ gtk_label_set_markup(GTK_LABEL(label), markup_bold(_("Imagesets")));
+ gtk_box_pack_start(GTK_BOX(vbbox), label, TRUE, TRUE, 0);
+
+ gen_sae_info->imagesets_combo_box = GTK_WIDGET(gtk_builder_get_object(builder, "imagesetscbox"));
+ /*gen_sae_info->imagesets_combo_box = gtk_combo_box_new_text();
+ g_signal_connect(gen_sae_info->imagesets_combo_box, "changed", G_CALLBACK(imagesets_combo_box_changed_callback), NULL);
+ gtk_box_pack_start(GTK_BOX(vbbox), gen_sae_info->imagesets_combo_box, TRUE, TRUE, 0);*/
+
+ label = gtk_label_new("");
+ gtk_label_set_markup(GTK_LABEL(label), markup_bold(_("Actions")));
+ gtk_box_pack_start(GTK_BOX(vbbox), label, TRUE, TRUE, 0);
+
+ gen_sae_info->actions_combo_box = GTK_WIDGET(gtk_builder_get_object(builder, "actionscbox"));
+ /*gen_sae_info->actions_combo_box = gtk_combo_box_new_text();
+ g_signal_connect(gen_sae_info->actions_combo_box, "changed", G_CALLBACK(actions_combo_box_changed_callback), NULL);
+ gtk_box_pack_start(GTK_BOX(vbbox), gen_sae_info->actions_combo_box, TRUE, TRUE, 0);*/
+
+ label = gtk_label_new("");
+ gtk_label_set_markup(GTK_LABEL(label), markup_bold(_("Directions")));
+ gtk_box_pack_start(GTK_BOX(vbbox), label, TRUE, TRUE, 0);
+
+ gen_sae_info->animations_combo_box = GTK_WIDGET(gtk_builder_get_object(builder, "animationscbox"));
+ /*gen_sae_info->animations_combo_box = gtk_combo_box_new_text();
+ g_signal_connect(gen_sae_info->animations_combo_box, "changed", G_CALLBACK(animations_combo_box_changed_callback), NULL);
+ gtk_box_pack_start(GTK_BOX(vbbox), gen_sae_info->animations_combo_box, TRUE, TRUE, 0);*/
+
+ //Right part setup
+ vpaned = gtk_vpaned_new();
+ gtk_box_pack_end(GTK_BOX(hbox), vpaned, TRUE, TRUE, 0);
+
+ darea = gtk_drawing_area_new();
+ gtk_paned_pack1(GTK_PANED(vpaned), darea, FALSE, FALSE);
+ gtk_widget_set_size_request(darea, -1, 120);
+ g_signal_connect(darea, "expose-event", G_CALLBACK(darea_expose_event), gen_sae_info);
+
+ source_view = text;
+ gtk_source_view_set_show_line_numbers(GTK_SOURCE_VIEW(text), TRUE);
+
+ scrolled_window = gtk_scrolled_window_new(gtk_text_view_get_hadjustment(text), gtk_text_view_get_vadjustment(text));
+ gtk_paned_pack2(GTK_PANED(vpaned), scrolled_window, TRUE, FALSE);
+ gtk_widget_set_size_request(scrolled_window, -1, 50);
+
+ file_new();
+
+ gtk_container_add(scrolled_window, text);
+
+ gtk_widget_show_all(win);
+ gtk_widget_show_all(win1);
+ gtk_widget_show_all(text);
+}