X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=synfig-studio%2Fsrc%2Fgtkmm%2Fcanvasview.cpp;h=ee39ade3fd9559b1b1a11b9bcc68f5bceb301e87;hb=e247b19b3926ff72ed36b4b1172abf00099558e4;hp=7ffc505fb96f00fd01242876063d9df60427fd19;hpb=a095981e18cc37a8ecc7cd237cc22b9c10329264;p=synfig.git diff --git a/synfig-studio/src/gtkmm/canvasview.cpp b/synfig-studio/src/gtkmm/canvasview.cpp index 7ffc505..ee39ade 100644 --- a/synfig-studio/src/gtkmm/canvasview.cpp +++ b/synfig-studio/src/gtkmm/canvasview.cpp @@ -684,10 +684,10 @@ CanvasView::CanvasView(etl::loose_handle instance,etl::handleget_type_mask(); toggleducksdial->update_toggles(m); @@ -1152,7 +1152,7 @@ CanvasView::create_display_bar() toggleducksdial->show(); // Set up the ResolutionDial widget - resolutiondial=Gtk::manage(new class ResolutionDial()); + resolutiondial=Gtk::manage(new class ResolutionDial(iconsize)); resolutiondial->update_lowres(work_area->get_low_resolution_flag()); resolutiondial->signal_increase_resolution().connect( @@ -1163,11 +1163,17 @@ CanvasView::create_display_bar() sigc::mem_fun(*this, &studio::CanvasView::toggle_low_res_pixel_flag)); resolutiondial->show(); - // Set up a separator + // Set up some separators Gtk::VSeparator *separator1 = Gtk::manage(new class Gtk::VSeparator()); separator1->show(); Gtk::VSeparator *separator2 = Gtk::manage(new class Gtk::VSeparator()); separator2->show(); + Gtk::VSeparator *separator3 = Gtk::manage(new class Gtk::VSeparator()); + separator3->show(); + Gtk::VSeparator *separator4 = Gtk::manage(new class Gtk::VSeparator()); + separator4->show(); + Gtk::VSeparator *separator5 = Gtk::manage(new class Gtk::VSeparator()); + separator5->show(); // Set up quality spin button quality_spin=Gtk::manage(new class Gtk::SpinButton(quality_adjustment_)); @@ -1179,7 +1185,7 @@ CanvasView::create_display_bar() // Set up the show grid toggle button show_grid = Gtk::manage(new class Gtk::ToggleButton()); show_grid->set_active(work_area->grid_status()); - Gtk::Image *icon = manage(new Gtk::Image(Gtk::StockID("synfig-toggle_show_grid"), Gtk::IconSize::from_name("synfig-small_icon"))); + Gtk::Image *icon = manage(new Gtk::Image(Gtk::StockID("synfig-toggle_show_grid"), iconsize)); icon->set_padding(0, 0); icon->show(); show_grid->add(*icon); @@ -1192,7 +1198,7 @@ CanvasView::create_display_bar() // Set up the snap to grid toggle button snap_grid = Gtk::manage(new class Gtk::ToggleButton()); snap_grid->set_active(work_area->grid_status()); - Gtk::Image *icon2 = manage(new Gtk::Image(Gtk::StockID("synfig-toggle_snap_grid"), Gtk::IconSize::from_name("synfig-small_icon"))); + Gtk::Image *icon2 = manage(new Gtk::Image(Gtk::StockID("synfig-toggle_snap_grid"), iconsize)); icon2->set_padding(0, 0); icon2->show(); snap_grid->add(*icon2); @@ -1205,7 +1211,7 @@ CanvasView::create_display_bar() // Set up the onion skin toggle button onion_skin = Gtk::manage(new class Gtk::ToggleButton()); onion_skin->set_active(work_area->get_onion_skin()); - Gtk::Image *icon3 = manage(new Gtk::Image(Gtk::StockID("synfig-toggle_onion_skin"), Gtk::IconSize::from_name("synfig-small_icon"))); + Gtk::Image *icon3 = manage(new Gtk::Image(Gtk::StockID("synfig-toggle_onion_skin"), iconsize)); icon3->set_padding(0, 0); icon3->show(); onion_skin->add(*icon3); @@ -1229,17 +1235,46 @@ CanvasView::create_display_bar() tooltips.set_tip(*future_onion_spin, _("Future onion skins")); future_onion_spin->show(); + // Setup render options dialog button + render_options_button = Gtk::manage(new class Gtk::Button()); + Gtk::Image *icon4 = manage(new Gtk::Image(Gtk::StockID("synfig-render_options"), iconsize)); + icon4->set_padding(0, 0); + icon4->show(); + render_options_button->add(*icon4); + render_options_button->signal_clicked().connect( + sigc::mem_fun0(render_settings,&studio::RenderSettings::present)); + tooltips.set_tip(*render_options_button, _("Shows the Render Settings Dialog")); + render_options_button->set_relief(Gtk::RELIEF_NONE); + render_options_button->show(); + + // Setup preview options dialog button + preview_options_button = Gtk::manage(new class Gtk::Button()); + Gtk::Image *icon5 = manage(new Gtk::Image(Gtk::StockID("synfig-preview_options"), iconsize)); + icon5->set_padding(0, 0); + icon5->show(); + preview_options_button->add(*icon5); + preview_options_button->signal_clicked().connect( + sigc::mem_fun(*this,&CanvasView::on_preview_option)); + tooltips.set_tip(*preview_options_button, _("Shows the Preview Settings Dialog")); + preview_options_button->set_relief(Gtk::RELIEF_NONE); + preview_options_button->show(); + displaybar->attach(*toggleducksdial, 0, 1, 0, 1, Gtk::SHRINK, Gtk::SHRINK); displaybar->attach(*separator1, 1, 2, 0, 1, Gtk::FILL, Gtk::FILL); displaybar->attach(*resolutiondial, 2, 3, 0, 1, Gtk::SHRINK, Gtk::SHRINK); displaybar->attach(*separator2, 3, 4, 0, 1, Gtk::FILL, Gtk::FILL); displaybar->attach(*quality_spin, 4, 5, 0, 1, Gtk::SHRINK, Gtk::SHRINK); - displaybar->attach(*show_grid, 5, 6, 0, 1, Gtk::SHRINK, Gtk::SHRINK); - displaybar->attach(*snap_grid, 6, 7, 0, 1, Gtk::SHRINK, Gtk::SHRINK); - displaybar->attach(*past_onion_spin, 7, 8, 0, 1, Gtk::SHRINK, Gtk::SHRINK); - displaybar->attach(*onion_skin, 8, 9, 0, 1, Gtk::SHRINK, Gtk::SHRINK); - displaybar->attach(*future_onion_spin, 9, 10, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*separator3, 5, 6, 0, 1, Gtk::FILL, Gtk::FILL); + displaybar->attach(*show_grid, 6, 7, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*snap_grid, 7, 8, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*separator4, 8, 9, 0, 1, Gtk::FILL, Gtk::FILL); + displaybar->attach(*past_onion_spin, 9, 10, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*onion_skin, 10, 11, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*future_onion_spin, 11, 12, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*separator5, 12, 13, 0, 1, Gtk::FILL, Gtk::FILL); + displaybar->attach(*render_options_button, 13, 14, 0, 1, Gtk::SHRINK, Gtk::SHRINK); + displaybar->attach(*preview_options_button, 14, 15, 0, 1, Gtk::SHRINK, Gtk::SHRINK); displaybar->show(); @@ -1390,7 +1425,7 @@ CanvasView::init_menus() - canvasmenu - viewmenu */ - action_group = Gtk::ActionGroup::create(); + action_group = Gtk::ActionGroup::create("canvasview"); //action_group->add( Gtk::Action::create("MenuFile", _("_File")) ); action_group->add( Gtk::Action::create("new", Gtk::Stock::NEW), @@ -2846,7 +2881,7 @@ CanvasView::on_duck_changed(const synfig::Point &value,const synfigapp::ValueDes if (ValueNode_BLineCalcVertex::Handle bline_vertex = ValueNode_BLineCalcVertex::Handle::cast_dynamic(value_desc.get_value_node())) { - ValueNode_BLine::Handle bline = ValueNode_BLine::Handle::cast_dynamic(bline_vertex->get_link(bline_vertex->get_link_index_from_name("bline"))); + ValueNode_BLine::Handle bline = ValueNode_BLine::Handle::cast_dynamic(bline_vertex->get_link("bline")); Real radius = 0.0; Real amount = synfig::find_closest_point((*bline)(get_time()), value, radius, bline->get_loop()); return canvas_interface()->change_value(synfigapp::ValueDesc(bline_vertex,bline_vertex->get_link_index_from_name("amount")), amount);