** Copyright (c) 2007, 2008 Chris Moore
** Copyright (c) 2008 Gerald Young
** Copyright (c) 2008 Carlos López
+** Copyright (c) 2009 Nikita Kitaev
**
** This package is free software; you can redistribute it and/or
** modify it under the terms of the GNU General Public License as
Glib::RefPtr<Gtk::ActionGroup> toolbox_action_group = Gtk::ActionGroup::create("toolbox");
- Glib::RefPtr<Gtk::ActionGroup> actions_action_group = Gtk::ActionGroup::create();
+ Glib::RefPtr<Gtk::ActionGroup> actions_action_group = Gtk::ActionGroup::create("actions");
menus_action_group->add( Gtk::Action::create("menu-file", _("_File")) );
menus_action_group->add( Gtk::Action::create("menu-edit", _("_Edit")) );
}
// the toolbox
- ACCEL("<Mod1>a", "<Actions>//state-normal" );
- ACCEL("<Mod1>v", "<Actions>//state-smooth_move" );
- ACCEL("<Mod1>s", "<Actions>//state-scale" );
- ACCEL("<Mod1>t", "<Actions>//state-rotate" );
- ACCEL("<Mod1>m", "<Actions>//state-mirror" );
- ACCEL("<Mod1>c", "<Actions>//state-circle" );
- ACCEL("<Mod1>r", "<Actions>//state-rectangle" );
- ACCEL("<Mod1>q", "<Actions>//state-star" );
- ACCEL("<Mod1>g", "<Actions>//state-gradient" );
- ACCEL("<Mod1>p", "<Actions>//state-polygon" );
- ACCEL("<Mod1>b", "<Actions>//state-bline" );
- ACCEL("<Mod1>x", "<Actions>//state-text" );
- ACCEL("<Mod1>f", "<Actions>//state-fill" );
- ACCEL("<Mod1>e", "<Actions>//state-eyedrop" );
- ACCEL("<Mod1>z", "<Actions>//state-zoom" );
- ACCEL("<Mod1>d", "<Actions>//state-draw" );
- ACCEL("<Mod1>k", "<Actions>//state-sketch" );
- ACCEL("<Mod1>w", "<Actions>//state-width" );
+ ACCEL("<Mod1>a", "<Actions>/action_group_state_manager/state-normal" );
+ ACCEL("<Mod1>v", "<Actions>/action_group_state_manager/state-smooth_move" );
+ ACCEL("<Mod1>s", "<Actions>/action_group_state_manager/state-scale" );
+ ACCEL("<Mod1>t", "<Actions>/action_group_state_manager/state-rotate" );
+ ACCEL("<Mod1>m", "<Actions>/action_group_state_manager/state-mirror" );
+ ACCEL("<Mod1>c", "<Actions>/action_group_state_manager/state-circle" );
+ ACCEL("<Mod1>r", "<Actions>/action_group_state_manager/state-rectangle" );
+ ACCEL("<Mod1>q", "<Actions>/action_group_state_manager/state-star" );
+ ACCEL("<Mod1>g", "<Actions>/action_group_state_manager/state-gradient" );
+ ACCEL("<Mod1>p", "<Actions>/action_group_state_manager/state-polygon" );
+ ACCEL("<Mod1>b", "<Actions>/action_group_state_manager/state-bline" );
+ ACCEL("<Mod1>x", "<Actions>/action_group_state_manager/state-text" );
+ ACCEL("<Mod1>f", "<Actions>/action_group_state_manager/state-fill" );
+ ACCEL("<Mod1>e", "<Actions>/action_group_state_manager/state-eyedrop" );
+ ACCEL("<Mod1>z", "<Actions>/action_group_state_manager/state-zoom" );
+ ACCEL("<Mod1>d", "<Actions>/action_group_state_manager/state-draw" );
+ ACCEL("<Mod1>k", "<Actions>/action_group_state_manager/state-sketch" );
+ ACCEL("<Mod1>w", "<Actions>/action_group_state_manager/state-width" );
// everything else
- ACCEL("<Control>a", "<Actions>//select-all-ducks" );
- ACCEL("<Control>d", "<Actions>//unselect-all-ducks" );
- ACCEL("<Control><Shift>a", "<Actions>//select-all-layers" );
- ACCEL("<Control><Shift>d", "<Actions>//unselect-all-layers" );
- ACCEL("F9", "<Actions>//render" );
- ACCEL("F11", "<Actions>//preview" );
- ACCEL("F8", "<Actions>//properties" );
- ACCEL("F12", "<Actions>//options" );
- ACCEL("<control>i", "<Actions>//import" );
- ACCEL2(Gtk::AccelKey(GDK_Escape,static_cast<Gdk::ModifierType>(0), "<Actions>//stop" ));
- ACCEL("<Control>g", "<Actions>//toggle-grid-show" );
- ACCEL("<Control>l", "<Actions>//toggle-grid-snap" );
- ACCEL2(Gtk::AccelKey('`',Gdk::CONTROL_MASK, "<Actions>//toggle-low-res" ));
- ACCEL("<Mod1>1", "<Actions>//mask-position-ducks" );
- ACCEL("<Mod1>2", "<Actions>//mask-vertex-ducks" );
- ACCEL("<Mod1>3", "<Actions>//mask-tangent-ducks" );
- ACCEL("<Mod1>4", "<Actions>//mask-radius-ducks" );
- ACCEL("<Mod1>5", "<Actions>//mask-width-ducks" );
- ACCEL("<Mod1>6", "<Actions>//mask-angle-ducks" );
- ACCEL2(Gtk::AccelKey(GDK_Page_Up,Gdk::SHIFT_MASK, "<Actions>//action-LayerRaise" ));
- ACCEL2(Gtk::AccelKey(GDK_Page_Down,Gdk::SHIFT_MASK, "<Actions>//action-LayerLower" ));
- ACCEL("<Control>1", "<Actions>//quality-01" );
- ACCEL("<Control>2", "<Actions>//quality-02" );
- ACCEL("<Control>3", "<Actions>//quality-03" );
- ACCEL("<Control>4", "<Actions>//quality-04" );
- ACCEL("<Control>5", "<Actions>//quality-05" );
- ACCEL("<Control>6", "<Actions>//quality-06" );
- ACCEL("<Control>7", "<Actions>//quality-07" );
- ACCEL("<Control>8", "<Actions>//quality-08" );
- ACCEL("<Control>9", "<Actions>//quality-09" );
- ACCEL("<Control>0", "<Actions>//quality-10" );
- ACCEL("<Control>z", "<Actions>//undo" );
- ACCEL("<Control>r", "<Actions>//redo" );
- ACCEL2(Gtk::AccelKey(GDK_Delete,Gdk::CONTROL_MASK, "<Actions>//action-LayerRemove" ));
- ACCEL2(Gtk::AccelKey('(',Gdk::CONTROL_MASK, "<Actions>//decrease-low-res-pixel-size" ));
- ACCEL2(Gtk::AccelKey(')',Gdk::CONTROL_MASK, "<Actions>//increase-low-res-pixel-size" ));
- ACCEL2(Gtk::AccelKey('(',Gdk::MOD1_MASK|Gdk::CONTROL_MASK, "<Actions>//amount-dec" ));
- ACCEL2(Gtk::AccelKey(')',Gdk::MOD1_MASK|Gdk::CONTROL_MASK, "<Actions>//amount-inc" ));
- ACCEL2(Gtk::AccelKey(']',Gdk::CONTROL_MASK, "<Actions>//jump-next-keyframe" ));
- ACCEL2(Gtk::AccelKey('[',Gdk::CONTROL_MASK, "<Actions>//jump-prev-keyframe" ));
- ACCEL2(Gtk::AccelKey('=',Gdk::CONTROL_MASK, "<Actions>//canvas-zoom-in" ));
- ACCEL2(Gtk::AccelKey('-',Gdk::CONTROL_MASK, "<Actions>//canvas-zoom-out" ));
- ACCEL2(Gtk::AccelKey('+',Gdk::CONTROL_MASK, "<Actions>//time-zoom-in" ));
- ACCEL2(Gtk::AccelKey('_',Gdk::CONTROL_MASK, "<Actions>//time-zoom-out" ));
- ACCEL2(Gtk::AccelKey('.',Gdk::CONTROL_MASK, "<Actions>//seek-next-frame" ));
- ACCEL2(Gtk::AccelKey(',',Gdk::CONTROL_MASK, "<Actions>//seek-prev-frame" ));
- ACCEL2(Gtk::AccelKey('>',Gdk::CONTROL_MASK, "<Actions>//seek-next-second" ));
- ACCEL2(Gtk::AccelKey('<',Gdk::CONTROL_MASK, "<Actions>//seek-prev-second" ));
- ACCEL("<Mod1>o", "<Actions>//toggle-onion-skin" );
- ACCEL("<Control><Shift>z", "<Actions>//canvas-zoom-fit" );
- ACCEL("<Control>p", "<Actions>//play" );
- ACCEL("Home", "<Actions>//seek-begin" );
- ACCEL("End", "<Actions>//seek-end" );
+ ACCEL("<Control>a", "<Actions>/canvasview/select-all-ducks" );
+ ACCEL("<Control>d", "<Actions>/canvasview/unselect-all-ducks" );
+ ACCEL("<Control><Shift>a", "<Actions>/canvasview/select-all-layers" );
+ ACCEL("<Control><Shift>d", "<Actions>/canvasview/unselect-all-layers" );
+ ACCEL("F9", "<Actions>/canvasview/render" );
+ ACCEL("F11", "<Actions>/canvasview/preview" );
+ ACCEL("F8", "<Actions>/canvasview/properties" );
+ ACCEL("F12", "<Actions>/canvasview/options" );
+ ACCEL("<control>i", "<Actions>/canvasview/import" );
+ ACCEL2(Gtk::AccelKey(GDK_Escape,static_cast<Gdk::ModifierType>(0), "<Actions>/canvasview/stop" ));
+ ACCEL("<Control>g", "<Actions>/canvasview/toggle-grid-show" );
+ ACCEL("<Control>l", "<Actions>/canvasview/toggle-grid-snap" );
+ ACCEL2(Gtk::AccelKey('`',Gdk::CONTROL_MASK, "<Actions>/canvasview/toggle-low-res" ));
+ ACCEL("<Mod1>1", "<Actions>/canvasview/mask-position-ducks" );
+ ACCEL("<Mod1>2", "<Actions>/canvasview/mask-vertex-ducks" );
+ ACCEL("<Mod1>3", "<Actions>/canvasview/mask-tangent-ducks" );
+ ACCEL("<Mod1>4", "<Actions>/canvasview/mask-radius-ducks" );
+ ACCEL("<Mod1>5", "<Actions>/canvasview/mask-width-ducks" );
+ ACCEL("<Mod1>6", "<Actions>/canvasview/mask-angle-ducks" );
+ ACCEL2(Gtk::AccelKey(GDK_Page_Up,Gdk::SHIFT_MASK, "<Actions>/action_group_layer_action_manager/action-LayerRaise" ));
+ ACCEL2(Gtk::AccelKey(GDK_Page_Down,Gdk::SHIFT_MASK, "<Actions>/action_group_layer_action_manager/action-LayerLower" ));
+ ACCEL("<Control>1", "<Actions>/canvasview/quality-01" );
+ ACCEL("<Control>2", "<Actions>/canvasview/quality-02" );
+ ACCEL("<Control>3", "<Actions>/canvasview/quality-03" );
+ ACCEL("<Control>4", "<Actions>/canvasview/quality-04" );
+ ACCEL("<Control>5", "<Actions>/canvasview/quality-05" );
+ ACCEL("<Control>6", "<Actions>/canvasview/quality-06" );
+ ACCEL("<Control>7", "<Actions>/canvasview/quality-07" );
+ ACCEL("<Control>8", "<Actions>/canvasview/quality-08" );
+ ACCEL("<Control>9", "<Actions>/canvasview/quality-09" );
+ ACCEL("<Control>0", "<Actions>/canvasview/quality-10" );
+ ACCEL("<Control>z", "<Actions>/action_group_dock_history/undo" );
+ ACCEL("<Control>r", "<Actions>/action_group_dock_history/redo" );
+ ACCEL2(Gtk::AccelKey(GDK_Delete,Gdk::CONTROL_MASK, "<Actions>/action_group_layer_action_manager/action-LayerRemove" ));
+ ACCEL2(Gtk::AccelKey('(',Gdk::CONTROL_MASK, "<Actions>/canvasview/decrease-low-res-pixel-size" ));
+ ACCEL2(Gtk::AccelKey(')',Gdk::CONTROL_MASK, "<Actions>/canvasview/increase-low-res-pixel-size" ));
+ ACCEL2(Gtk::AccelKey('(',Gdk::MOD1_MASK|Gdk::CONTROL_MASK, "<Actions>/action_group_layer_action_manager/amount-dec" ));
+ ACCEL2(Gtk::AccelKey(')',Gdk::MOD1_MASK|Gdk::CONTROL_MASK, "<Actions>/action_group_layer_action_manager/amount-inc" ));
+ ACCEL2(Gtk::AccelKey(']',Gdk::CONTROL_MASK, "<Actions>/canvasview/jump-next-keyframe" ));
+ ACCEL2(Gtk::AccelKey('[',Gdk::CONTROL_MASK, "<Actions>/canvasview/jump-prev-keyframe" ));
+ ACCEL2(Gtk::AccelKey('=',Gdk::CONTROL_MASK, "<Actions>/canvasview/canvas-zoom-in" ));
+ ACCEL2(Gtk::AccelKey('-',Gdk::CONTROL_MASK, "<Actions>/canvasview/canvas-zoom-out" ));
+ ACCEL2(Gtk::AccelKey('+',Gdk::CONTROL_MASK, "<Actions>/canvasview/time-zoom-in" ));
+ ACCEL2(Gtk::AccelKey('_',Gdk::CONTROL_MASK, "<Actions>/canvasview/time-zoom-out" ));
+ ACCEL2(Gtk::AccelKey('.',Gdk::CONTROL_MASK, "<Actions>/canvasview/seek-next-frame" ));
+ ACCEL2(Gtk::AccelKey(',',Gdk::CONTROL_MASK, "<Actions>/canvasview/seek-prev-frame" ));
+ ACCEL2(Gtk::AccelKey('>',Gdk::CONTROL_MASK, "<Actions>/canvasview/seek-next-second" ));
+ ACCEL2(Gtk::AccelKey('<',Gdk::CONTROL_MASK, "<Actions>/canvasview/seek-prev-second" ));
+ ACCEL("<Mod1>o", "<Actions>/canvasview/toggle-onion-skin" );
+ ACCEL("<Control><Shift>z", "<Actions>/canvasview/canvas-zoom-fit" );
+ ACCEL("<Control>p", "<Actions>/canvasview/play" );
+ ACCEL("Home", "<Actions>/canvasview/seek-begin" );
+ ACCEL("End", "<Actions>/canvasview/seek-end" );
#undef ACCEL
}
"different version of libsynfig than what is currently\n"
"installed. Synfig Studio will now abort. Try downloading\n"
"the latest version from the Synfig website at\n"
- "http://synfig.org/Download"
+ "http://synfig.org/en/current-release"
);
throw 40;
}
studio_init_cb.task(_("Init Tools..."));
- /* row 1 */
+ /* editing tools */
state_manager->add_state(&state_normal);
state_manager->add_state(&state_smooth_move);
state_manager->add_state(&state_scale);
state_manager->add_state(&state_rotate);
studio_init_cb.task(_("Init ModMirror...")); module_list_.push_back(new ModMirror()); module_list_.back()->start();
- /* row 2 */
+ /* geometry */
state_manager->add_state(&state_circle);
state_manager->add_state(&state_rectangle);
state_manager->add_state(&state_star);
state_manager->add_state(&state_gradient);
if(!getenv("SYNFIG_DISABLE_POLYGON")) state_manager->add_state(&state_polygon); // Enabled - for working without ducks
- /* row 3 */
+ /* bline tools */
state_manager->add_state(&state_bline);
- state_manager->add_state(&state_text);
+ if(!getenv("SYNFIG_DISABLE_DRAW" )) state_manager->add_state(&state_draw); // Enabled for now. Let's see whether they're good enough yet.
+ if(!getenv("SYNFIG_DISABLE_WIDTH" )) state_manager->add_state(&state_width); // Enabled since 0.61.09
state_manager->add_state(&state_fill);
state_manager->add_state(&state_eyedrop);
- state_manager->add_state(&state_zoom);
- if(!getenv("SYNFIG_DISABLE_DRAW" )) state_manager->add_state(&state_draw); // Enabled for now. Let's see whether they're good enough yet.
+ /* other */
+ state_manager->add_state(&state_text);
if(!getenv("SYNFIG_DISABLE_SKETCH" )) state_manager->add_state(&state_sketch);
- if(!getenv("SYNFIG_DISABLE_WIDTH" )) state_manager->add_state(&state_width); // Enabled since 0.61.09
+ state_manager->add_state(&state_zoom);
studio_init_cb.task(_("Init ModPalette..."));
module_list_.push_back(new ModPalette()); module_list_.back()->start();
studio_init_cb.task(_("Done."));
studio_init_cb.amount_complete(10000,10000);
+ // To avoid problems with some window managers and gtk >= 2.18
+ // we should show dock dialogs after the settings load.
+ // If dock dialogs are shown before the settings are loaded,
+ // the windows manager can act over it.
+ // See discussions here:
+ // * http://synfig.org/forums/viewtopic.php?f=1&t=1131&st=0&sk=t&sd=a&start=30
+ // * http://synfig.org/forums/viewtopic.php?f=15&t=1062
+ dock_manager->show_all_dock_dialogs();
+
toolbox->present();
}
catch(String x)
return Glib::build_filename(get_user_app_directory(),file);
}
-#define SCALE_FACTOR (1280)
//! set the \a instance's canvas(es) position and size to be those specified in the first entry of recent_files_window_size
void
App::set_recent_file_window_size(etl::handle<Instance> instance)
{
- int screen_w(Gdk::screen_width());
- int screen_h(Gdk::screen_height());
const std::string &canvas_window_size = *recent_files_window_size.begin();
current = separator+1;
continue;
}
-
- if (x > SCALE_FACTOR) x = SCALE_FACTOR - 150; if (x < 0) x = 0;
- if (y > SCALE_FACTOR) y = SCALE_FACTOR - 150; if (y < 0) y = 0;
- x=x*screen_w/SCALE_FACTOR;
- y=y*screen_h/SCALE_FACTOR;
- if(getenv("SYNFIG_WINDOW_POSITION_X_OFFSET"))
- x += atoi(getenv("SYNFIG_WINDOW_POSITION_X_OFFSET"));
- if(getenv("SYNFIG_WINDOW_POSITION_Y_OFFSET"))
- y += atoi(getenv("SYNFIG_WINDOW_POSITION_Y_OFFSET"));
-
- if (w > SCALE_FACTOR) w = 150; if (w < 0) w = 0;
- if (h > SCALE_FACTOR) h = 150; if (h < 0) h = 0;
-
CanvasView::Handle canvasview = instance->find_canvas_view(canvas);
canvasview->move(x,y);
- canvasview->resize(w*screen_w/SCALE_FACTOR,h*screen_h/SCALE_FACTOR);
+ canvasview->resize(w,h);
canvasview->present();
current = separator+1;
void
App::add_recent_file(const etl::handle<Instance> instance)
{
- int screen_w(Gdk::screen_width());
- int screen_h(Gdk::screen_height());
std::string canvas_window_size;
canvas_window_size += strprintf("%s %d %d %d %d\t",
canvas->get_relative_id(canvas->get_root()).c_str(),
- x_pos*SCALE_FACTOR/screen_w, y_pos*SCALE_FACTOR/screen_h,
- x_size*SCALE_FACTOR/screen_w, y_size*SCALE_FACTOR/screen_h);
+ x_pos, y_pos,
+ x_size, y_size);
}
add_recent_file(absolute_path(instance->get_file_name()), canvas_window_size);
}
-#undef SCALE_FACTOR
void
App::add_recent_file(const std::string &file_name, const std::string &window_size)
void
App::reset_initial_window_configuration()
{
+ Glib::RefPtr<Gdk::Display> display(Gdk::Display::get_default());
+ Glib::RefPtr<const Gdk::Screen> screen(display->get_default_screen());
+ Gdk::Rectangle rect;
+ // A proper way to obtain the primary monitor is to use the
+ // Gdk::Screen::get_primary_monitor () const member. But as it
+ // was introduced in gtkmm 2.20 I assume that the monitor 0 is the
+ // primary one.
+ screen->get_monitor_geometry(0,rect);
+#define hpanel_width 79.0f
+#define hpanel_height 25.0f
+#define vpanel_width 20.0f
+#define vpanel_height 100.0f
+#define vdock 20.0f
+#define hdock 20.0f
+
+/* percentages referred to width or height of the screen
+ *---------------------------------------------------------------------*
+ * t | |
+ * o | |
+ * o | |vdock%
+ * l | |
+ * b | |------------
+ * o | |
+ * x | |vdock%
+ * -------- |
+ * |
+ * |------------
+ * |
+ * |vdock%
+ * |
+ * |
+ *-----hdock%----------------------------------------------|------------
+ * | |
+ * | |vdock%
+ * | |
+ * | |
+ * --------------------------------------------------------------------*
+*/
+// Vertical Panel
+ int v_xpos=rect.get_x() + rect.get_width()*(1.0-vpanel_width/100.0);
+ int v_xsize=rect.get_width()*vpanel_width/100.0;
+ int v_ypos=rect.get_y();
+ int v_ysize=rect.get_height()*vpanel_height/100.0;
+ std::string v_pos(strprintf("%d %d", v_xpos, v_ypos));
+ std::string v_size(strprintf("%d %d", v_xsize, v_ysize));
+// Horizontal Panel
+ int h_xpos=rect.get_x();
+ int h_xsize=rect.get_width()*hpanel_width/100.0;
+ int h_ypos=rect.get_y()+ rect.get_height()*(1.0-hpanel_height/100.0);;
+ int h_ysize=rect.get_height()*hpanel_height/100.0;
+ std::string h_pos(strprintf("%d %d", h_xpos, h_ypos));
+ std::string h_size(strprintf("%d %d", h_xsize, h_ysize));
+ int v_dock1 = rect.get_height()*vdock*0.8/100.0;
+ int v_dock2 = rect.get_height()*vdock*0.6/100.0;
+ int v_dock3 = rect.get_height()*vdock*1.1/100.0;
+ int h_dock = rect.get_width()*hdock/100.0;
+//Contents size
+ std::string v_contents(strprintf("%d %d %d", v_dock1, v_dock2, v_dock3));
+ std::string h_contents(strprintf("%d", h_dock));
+// Tool Box position
+ std::string tbox_pos(strprintf("%d %d", rect.get_x(), rect.get_y()));
+/*
+ synfig::info("tool box pos: %s", tbox_pos.c_str());
+ synfig::info("v_contents sizes: %s", v_contents.c_str());
+ synfig::info("v_pos: %s", v_pos.c_str());
+ synfig::info("v_sizes: %s", v_size.c_str());
+ synfig::info("h_contents sizes: %s", h_contents.c_str());
+ synfig::info("h_pos: %s", h_pos.c_str());
+ synfig::info("h_sizes: %s", h_size.c_str());
+*/
synfigapp::Main::settings().set_value("dock.dialog.1.comp_selector","1");
synfigapp::Main::settings().set_value("dock.dialog.1.contents","navigator - info pal_edit pal_browse - tool_options history canvases - layers groups");
- synfigapp::Main::settings().set_value("dock.dialog.1.contents_size","225 167 207");
- synfigapp::Main::settings().set_value("dock.dialog.1.pos","1057 32");
- synfigapp::Main::settings().set_value("dock.dialog.1.size","208 1174");
+ synfigapp::Main::settings().set_value("dock.dialog.1.contents_size",v_contents);
+ synfigapp::Main::settings().set_value("dock.dialog.1.size",v_size);
+ synfigapp::Main::settings().set_value("dock.dialog.1.pos",v_pos);
synfigapp::Main::settings().set_value("dock.dialog.2.comp_selector","0");
synfigapp::Main::settings().set_value("dock.dialog.2.contents","params children keyframes | timetrack curves meta_data");
- synfigapp::Main::settings().set_value("dock.dialog.2.contents_size","263");
- synfigapp::Main::settings().set_value("dock.dialog.2.pos","0 973");
- synfigapp::Main::settings().set_value("dock.dialog.2.size","1045 235");
+ synfigapp::Main::settings().set_value("dock.dialog.2.contents_size",h_contents);
+ synfigapp::Main::settings().set_value("dock.dialog.2.size",h_size);
+ synfigapp::Main::settings().set_value("dock.dialog.2.pos",h_pos);
+ synfigapp::Main::settings().set_value("window.toolbox.pos",tbox_pos);
+
+ dock_manager->show_all_dock_dialogs();
+}
+
+void
+App::reset_initial_preferences()
+{
synfigapp::Main::settings().set_value("pref.distance_system","pt");
synfigapp::Main::settings().set_value("pref.use_colorspace_gamma","1");
#ifdef SINGLE_THREADED
- synfigapp::Main::settings().set_value("pref.single_threaded","0");
+ synfigapp::Main::settings().set_value("pref.single_threaded","1");
#endif
synfigapp::Main::settings().set_value("pref.restrict_radius_ducks","0");
synfigapp::Main::settings().set_value("pref.resize_imported_images","0");
synfigapp::Main::settings().set_value("pref.predefined_size",DEFAULT_PREDEFINED_SIZE);
synfigapp::Main::settings().set_value("pref.preferred_fps","24.0");
synfigapp::Main::settings().set_value("pref.predefined_fps",DEFAULT_PREDEFINED_FPS);
- synfigapp::Main::settings().set_value("window.toolbox.pos","4 4");
+
}
bool
{
file_type_enum = manage(new Widget_Enum());
file_type_enum->set_param_desc(ParamDesc().set_hint("enum")
- .add_enum_value(synfig::RELEASE_VERSION_0_61_09, "0.61.09", strprintf("0.61.09 (%s)", _("current")))
+ .add_enum_value(synfig::RELEASE_VERSION_0_62_01, "0.62.01", strprintf("0.62.01 (%s)", _("current")))
+ .add_enum_value(synfig::RELEASE_VERSION_0_62_00, "0.62.00", "0.61.00")
+ .add_enum_value(synfig::RELEASE_VERSION_0_61_09, "0.61.09", "0.61.09")
.add_enum_value(synfig::RELEASE_VERSION_0_61_08, "0.61.08", "0.61.08")
.add_enum_value(synfig::RELEASE_VERSION_0_61_07, "0.61.07", "0.61.07")
.add_enum_value(synfig::RELEASE_VERSION_0_61_06, "0.61.06", strprintf("0.61.06 %s", _("and older"))));
void
App::dialog_help()
{
- if (!try_open_url("http://synfig.org/Documentation"))
+ if (!try_open_url("http://synfig.org/wiki/Category:Manual"))
{
Gtk::MessageDialog dialog(_("Documentation"), false, Gtk::MESSAGE_INFO, Gtk::BUTTONS_CLOSE, true);
- dialog.set_secondary_text(_("Documentation for Synfig Studio is available on the website:\n\nhttp://www.synfig.org/Documentation"));
+ dialog.set_secondary_text(_("Documentation for Synfig Studio is available on the website:\n\nhttp://synfig.org/wiki/Category:Manual"));
dialog.set_title(_("Help"));
dialog.run();
}