X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fcanvasview.cpp;h=561549f3912781f07c1f80b07b052a94d1e5a134;hb=f3aafc647c21fa0713a641ed78f38a9cefb2d6d1;hp=8e9ec16ff8953836ef7e8e91553fd7a37516f1ca;hpb=d0393f158eb7b8c3b79e41edd681b4397abd153c;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/canvasview.cpp b/synfig-studio/trunk/src/gtkmm/canvasview.cpp index 8e9ec16..561549f 100644 --- a/synfig-studio/trunk/src/gtkmm/canvasview.cpp +++ b/synfig-studio/trunk/src/gtkmm/canvasview.cpp @@ -123,13 +123,6 @@ using namespace sigc; #define DEFAULT_TIME_WINDOW_SIZE (10.0) -/* -#ifdef DEBUGPOINT -#undef DEBUGPOINT -#endif -#define DEBUGPOINT() -*/ - #ifndef SMALL_BUTTON #define SMALL_BUTTON(button,stockid,tooltip) \ button = manage(new class Gtk::Button()); \ @@ -449,7 +442,7 @@ public: { // assert(view->layer_tree); - if(!view->layer_tree) { DEBUGPOINT(); synfig::error("%s:%d canvas_view.layer_tree not defined!?", __FILE__, __LINE__); return LayerList(); } + if(!view->layer_tree) { synfig::error("%s:%d canvas_view.layer_tree not defined!?", __FILE__, __LINE__); return LayerList(); } return view->layer_tree->get_selected_layers(); } @@ -458,7 +451,7 @@ public: { // assert(view->layer_tree); - if(!view->layer_tree) { DEBUGPOINT(); synfig::error("%s:%d canvas_view.layer_tree not defined!?", __FILE__, __LINE__); return 0; } + if(!view->layer_tree) { synfig::error("%s:%d canvas_view.layer_tree not defined!?", __FILE__, __LINE__); return 0; } return view->layer_tree->get_selected_layer(); } @@ -467,7 +460,7 @@ public: { // assert(view->layer_tree); - if(!view->layer_tree) { DEBUGPOINT(); synfig::error("%s:%d canvas_view.layer_tree not defined!?", __FILE__, __LINE__); return; } + if(!view->layer_tree) { synfig::error("%s:%d canvas_view.layer_tree not defined!?", __FILE__, __LINE__); return; } view->layer_tree->select_layers(layer_list); //view->get_smach().process_event(EVENT_REFRESH_DUCKS); @@ -479,7 +472,7 @@ public: { // assert(view->layer_tree); - if(!view->layer_tree) { DEBUGPOINT(); synfig::error("canvas_view.layer_tree not defined!?"); return; } + if(!view->layer_tree) { synfig::error("canvas_view.layer_tree not defined!?"); return; } view->layer_tree->select_layer(layer); //view->queue_rebuild_ducks(); } @@ -1187,6 +1180,12 @@ CanvasView::init_menus() action_group = Gtk::ActionGroup::create(); //action_group->add( Gtk::Action::create("MenuFile", _("_File")) ); + action_group->add( Gtk::Action::create("new", Gtk::Stock::NEW), + sigc::hide_return(sigc::ptr_fun(&studio::App::new_instance)) + ); + action_group->add( Gtk::Action::create("open", Gtk::Stock::OPEN), + sigc::hide_return(sigc::ptr_fun(&studio::App::dialog_open)) + ); action_group->add( Gtk::Action::create("save", Gtk::Stock::SAVE), hide_return(sigc::mem_fun(*get_instance().get(), &studio::Instance::save)) ); @@ -1229,6 +1228,9 @@ CanvasView::init_menus() action_group->add( Gtk::Action::create("close-document", Gtk::StockID("gtk-close"), _("Close Document")), sigc::hide_return(sigc::mem_fun(*this,&studio::CanvasView::close_instance)) ); + action_group->add( Gtk::Action::create("quit", Gtk::StockID("gtk-quit"), _("Quit")), + sigc::hide_return(sigc::ptr_fun(&studio::App::quit)) + ); //action_group->add( Gtk::Action::create("undo", Gtk::StockID("gtk-undo")), // SLOT_EVENT(EVENT_UNDO) @@ -1296,22 +1298,29 @@ CanvasView::init_menus() sigc::mem_fun0(*preview_dialog, &studio::Dialog_Preview::present) ); - action_group->add( Gtk::Action::create("toggle-grid-show", _("Toggle Grid Show")), - sigc::mem_fun(*work_area, &studio::WorkArea::toggle_grid) - ); - action_group->add( Gtk::Action::create("toggle-grid-snap", _("Toggle Grid Snap")), - sigc::mem_fun(*work_area, &studio::WorkArea::toggle_grid_snap) - ); - action_group->add( Gtk::Action::create("toggle-guide-show", _("Toggle Guide Show")), - sigc::mem_fun(*work_area, &studio::WorkArea::toggle_guide_snap) - ); - action_group->add( Gtk::Action::create("toggle-low-res", _("Toggle Low-Res")), - sigc::mem_fun(*work_area, &studio::WorkArea::toggle_low_resolution_flag) - ); - action_group->add( Gtk::Action::create("toggle-onion-skin", _("Toggle Onion Skin")), - sigc::mem_fun(*work_area, &studio::WorkArea::toggle_onion_skin) - ); + { + Glib::RefPtr action; + action = Gtk::ToggleAction::create("toggle-grid-show", _("Show Grid")); + action->set_active(work_area->grid_status()); + action_group->add(action, sigc::mem_fun(*work_area, &studio::WorkArea::toggle_grid)); + + action = Gtk::ToggleAction::create("toggle-grid-snap", _("Snap to Grid")); + action->set_active(work_area->get_grid_snap()); + action_group->add(action, sigc::mem_fun(*work_area, &studio::WorkArea::toggle_grid_snap)); + + action = Gtk::ToggleAction::create("toggle-guide-show", _("Show Guides")); + action->set_active(work_area->get_show_guides()); + action_group->add(action, sigc::mem_fun(*work_area, &studio::WorkArea::toggle_guide_snap)); + + action = Gtk::ToggleAction::create("toggle-low-res", _("Use Low-Res")); + action->set_active(work_area->get_low_resolution_flag()); + action_group->add(action, sigc::mem_fun(*work_area, &studio::WorkArea::toggle_low_resolution_flag)); + + action = Gtk::ToggleAction::create("toggle-onion-skin", _("Show Onion Skin")); + action->set_active(work_area->get_onion_skin()); + action_group->add(action, sigc::mem_fun(*work_area, &studio::WorkArea::toggle_onion_skin)); + } action_group->add( Gtk::Action::create("canvas-zoom-fit", Gtk::StockID("gtk-zoom-fit")), sigc::mem_fun(*work_area, &studio::WorkArea::zoom_fit) @@ -1770,7 +1779,7 @@ CanvasView::popup_layer_menu(synfig::Layer::Handle layer) void CanvasView::register_layer_type(synfig::Layer::Book::value_type &/*lyr*/,std::map* /*category_map*/) { -/* if(lyr.second.category==_("Do Not Use")) +/* if(lyr.second.category==CATEGORY_DO_NOT_USE) return; if(category_map->count(lyr.second.category)==0) @@ -2521,22 +2530,18 @@ CanvasView::on_keyframe_button_pressed() { synfigapp::CanvasInterface::Mode mode(get_mode()); + // future && past --> past if((mode&synfigapp::MODE_ANIMATE_FUTURE) && (mode&synfigapp::MODE_ANIMATE_PAST)) - { set_mode(get_mode()-synfigapp::MODE_ANIMATE_FUTURE); - } + // past --> future else if(!(mode&synfigapp::MODE_ANIMATE_FUTURE) && (mode&synfigapp::MODE_ANIMATE_PAST)) - { - set_mode(get_mode()-synfigapp::MODE_ANIMATE_PAST|synfigapp::MODE_ANIMATE_FUTURE); - } + set_mode((get_mode()-synfigapp::MODE_ANIMATE_PAST)|synfigapp::MODE_ANIMATE_FUTURE); + // future --> (nothing) else if((mode&synfigapp::MODE_ANIMATE_FUTURE) && !(mode&synfigapp::MODE_ANIMATE_PAST)) - { set_mode(get_mode()-synfigapp::MODE_ANIMATE_FUTURE); - } + // (nothing) --> future && past else if(!(mode&synfigapp::MODE_ANIMATE_FUTURE) && !(mode&synfigapp::MODE_ANIMATE_PAST)) - { set_mode(get_mode()|synfigapp::MODE_ANIMATE_FUTURE|synfigapp::MODE_ANIMATE_PAST); - } } bool @@ -3020,7 +3025,7 @@ CanvasView::on_waypoint_clicked(synfigapp::ValueDesc value_desc,synfig::Waypoint ) )); - waypoint_menu->items().push_back(Gtk::Menu_Helpers::StockMenuElem(Gtk::StockID("Edit Waypoint"), + waypoint_menu->items().push_back(Gtk::Menu_Helpers::StockMenuElem(Gtk::StockID(_("Edit Waypoint")), sigc::mem_fun( waypoint_dialog, &Gtk::Widget::show @@ -3315,8 +3320,9 @@ CanvasView::toggle_duck_mask(Duckmatic::Type type) void CanvasView::image_import() { - String filename(dirname(get_canvas()->get_file_name())); - if(App::dialog_open_file(_("Import Image"), filename)) + // String filename(dirname(get_canvas()->get_file_name())); + String filename("*.*"); + if(App::dialog_open_file(_("Import Image"), filename, IMAGE_DIR_PREFERENCE)) canvas_interface()->import(filename); }