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))
);
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)
}
}
+ // prime factors of 120 are 2, 2, 2, 3, 5
+ int pixel_size_array[] = {2,3,4,5,6,8,10,12,15,20,24,30,40,60,120};
+ list<int> pixel_sizes(pixel_size_array, pixel_size_array + sizeof(pixel_size_array) / sizeof(int));
+
+ // Low-Res Quality Menu
+ {
+ int i;
+ for(list<int>::iterator iter = pixel_sizes.begin(); iter != pixel_sizes.end(); iter++)
+ {
+ i = *iter;
+ Glib::RefPtr<Gtk::RadioAction> action(Gtk::RadioAction::create(low_res_pixel_size_group,strprintf("lowres-pixel-%d",i),
+ strprintf(_("Set Low-Res pixel size to %d"),i)));
+ if(i==2) // default pixel size
+ {
+ action->set_active();
+ work_area->set_low_res_pixel_size(i);
+ }
+ action_group->add( action,
+ sigc::bind(
+ sigc::mem_fun(*work_area, &studio::WorkArea::set_low_res_pixel_size),
+ i
+ )
+ );
+ }
+ }
+
action_group->add( Gtk::Action::create("play", Gtk::Stock::MEDIA_PLAY),
sigc::mem_fun(*this, &studio::CanvasView::play)
);
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<Gtk::ToggleAction> 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)
sigc::mem_fun(*work_area, &studio::WorkArea::zoom_norm)
);
-
{
Glib::RefPtr<Gtk::Action> action;
{
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
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);
}
}
bool
-CanvasView::on_delete_event(GdkEventAny* event)
+CanvasView::on_delete_event(GdkEventAny* event __attribute__ ((unused)))
{
close_view();