path-chemistry.cpp revision 2592a18b9adeb33096cf9131787ffdbad8316427
6322N/A#define __SP_PATH_CHEMISTRY_C__
6322N/A#ifdef HAVE_CONFIG_H
6322N/A#include "sp-flowtext.h"
6322N/A#include "text-editing.h"
6322N/A#include "inkscape.h"
6322N/A#include "document.h"
6322N/A#include "message-stack.h"
6322N/A#include "selection.h"
6322N/A#include "desktop-handles.h"
6322N/A#include "path-chemistry.h"
6322N/Astatic void sp_selected_path_to_curves0(gboolean do_document_done, guint32 text_grouping_policy);
6322N/Astatic bool sp_item_list_to_curves(const GSList *items, GSList **selected, GSList **to_select);
6322N/A sp_desktop_message_stack(desktop)->flash(Inkscape::WARNING_MESSAGE, _("Select <b>at least two objects</b> to combine."));
// remember the position, id, transform and style of the topmost path, they will be assigned to the combined one
did = true;
curve = c;
sp_curve_unref(c);
position--;
if (did) {
if (path_effect)
sp_desktop_message_stack(desktop)->flash(Inkscape::ERROR_MESSAGE, _("<b>No path(s)</b> to combine in the selection."));
sp_desktop_message_stack(desktop)->flash(Inkscape::WARNING_MESSAGE, _("Select <b>path(s)</b> to break apart."));
bool did = false;
did = true;
if (path_effect)
if (l == list)
if (did) {
sp_desktop_message_stack(desktop)->flash(Inkscape::ERROR_MESSAGE, _("<b>No path(s)</b> to break apart in the selection."));
if (interactive) {
sp_selected_path_to_curves0(false, 0);
if (interactive)
sp_desktop_message_stack(desktop)->flash(Inkscape::WARNING_MESSAGE, _("Select <b>object(s)</b> to convert to path."));
bool did = false;
if (interactive) {
if (interactive) {
if (did) {
sp_desktop_message_stack(desktop)->flash(Inkscape::ERROR_MESSAGE, _("<b>No objects</b> to convert to path in the selection."));
bool did = false;
// convert 3D box to ordinary group of paths; replace the old element in 'selected' with the new group
if (repr) {
did = true;
did = true;
if (!repr)
did = true;
return did;
if (!item)
return NULL;
if (!curve)
return NULL;
return NULL;
if ( mask_str )
if ( clip_path_str )
sp_repr_set_attr(repr, "inkscape:transform-center-x", SP_OBJECT_REPR(item)->attribute("inkscape:transform-center-x"));
sp_repr_set_attr(repr, "inkscape:transform-center-y", SP_OBJECT_REPR(item)->attribute("inkscape:transform-center-y"));
return repr;
if (!items) {
sp_desktop_message_stack(desktop)->flash(Inkscape::WARNING_MESSAGE, _("Select <b>path(s)</b> to reverse."));
bool did = false;
did = true;
if (did) {
sp_desktop_message_stack(desktop)->flash(Inkscape::ERROR_MESSAGE, _("<b>No paths</b> to reverse in the selection."));