"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;
}
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();
- if(!getenv("SYNFIG_DISABLE_WIDTH" )) state_manager->add_state(&state_width); // Enabled since 0.61.09
- /* new objects */
+ /* 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
- state_manager->add_state(&state_text);
+
+ /* bline tools */
state_manager->add_state(&state_bline);
if(!getenv("SYNFIG_DISABLE_DRAW" )) state_manager->add_state(&state_draw); // Enabled for now. Let's see whether they're good enough yet.
-
- /* other */
+ 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);
+
+ /* other */
+ state_manager->add_state(&state_text);
if(!getenv("SYNFIG_DISABLE_SKETCH" )) state_manager->add_state(&state_sketch);
+ 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)
{
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_00, "0.62.00", strprintf("0.62.00 (%s)", _("current")))
+ .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();
}