void moth_gui::goto_page(unsigned int number) { if (page_is_moving()) return; if (number < 1 || number > book->get_pages()) { moth_dialog dialog; std::string info("\"Bad page number\""); dialog.info(info); return; } if (book->get_page() == (number & (int)(~0x1))) return; number = (number & ~(0x1)); dir = (book->get_page() > (number)) ? move_left : move_right; int page_before = book->get_page(); book->set_page(number); if (check_textures()) load_textures(); book->set_page(page_before); move_by_pages = abs(number - page_before); moving_page = 1; moving_page_ctr = moving_ctr; sleep_time = moving_sleep_time; }
void moth_gui::move_page_right() { stop_show_search_res(); if (page_is_moving() || book->page_last()) return; dir = move_right; if (check_textures()) load_textures(); moving_page = 1; moving_page_ctr = moving_ctr; sleep_time = moving_sleep_time; }
// menu_action: Called when a menu/toolbar item is selected // ----------------------------------------------------- >> static void menu_action(GtkAction *action) { string act = gtk_action_get_name(action); if (act == "WadManager") open_main_window(); else if (act == "Exit") gtk_main_quit(); else if (act == "Close") file_close(); else if (act == "ModeVerts") change_edit_mode(0); else if (act == "ModeLines") change_edit_mode(1); else if (act == "ModeSectors") change_edit_mode(2); else if (act == "ModeThings") change_edit_mode(3); else if (act == "Mode3d") { if (map.opened) start_3d_mode(); } else if (act == "ShowConsole") popup_console(); else if (act == "ShowScriptEditor") open_script_edit(); else if (act == "Preferences") open_prefs_dialog(); else if (act == "About") { gtk_show_about_dialog(GTK_WINDOW(editor_window), "name", "SLADE", "comments", "by Simon 'SlayeR' Judd, 2005", "version", __SLADEVERS, "website", "http://slade.mancubus.net", NULL); } else if (act == "Save") { if (edit_wad) file_save(); else file_saveas(); } else if (act == "SaveAs") file_saveas(); else if (act == "MergeSectors") sector_merge(false); else if (act == "JoinSectors") sector_merge(true); else if (act == "CreateDoor") sector_create_door(open_texture_browser(true, false, false, "-")); else if (act == "CreateStairs") edit_create_stairs(); else if (act == "CheckMapStats") check_map_stats(); else if (act == "CheckTags") message_box(parse_string("%d Tags Cleaned", clean_tags()), GTK_MESSAGE_INFO); else if (act == "CheckVerts") message_box(parse_string("%d Vertices Removed", remove_free_verts()), GTK_MESSAGE_INFO); else if (act == "CheckLines") message_box(parse_string("%d 0-Length Lines Removed", remove_zerolength_lines()), GTK_MESSAGE_INFO); else if (act == "CheckSectors") message_box(parse_string("%d Sectors Removed", remove_unused_sectors()), GTK_MESSAGE_INFO); else if (act == "CheckTextures") check_textures(); else if (act == "AlignX") line_align_x(); else if (act == "CorrectRefs") line_correct_references(); else if (act == "SplitLine") { int splits = 2; string ret = entry_box("Enter Number Of Splits:"); if (ret != "") splits = atoi(ret.c_str()); line_split(splits); } else message_box("Menu action not implemented", GTK_MESSAGE_INFO); force_map_redraw(true, true); }